From 238925269846c9f3cde83946f802ba3334d48987 Mon Sep 17 00:00:00 2001 From: Redo Date: Wed, 9 Nov 2022 13:22:06 -0600 Subject: [PATCH] use const where appropriate --- sim/compiled_sim.bat | 2 +- sim/compiled_sim.c | 86 +- sim/compiled_sim.dll | Bin 57075 -> 50819 bytes sim/compiled_sim_gates.c | 8 +- sim/dump.txt | 2469 ++++++++++++++++++++++++++++++++++++++ sim/gencfuncs.lua | 24 + sim/network.lua | 2 +- 7 files changed, 2544 insertions(+), 47 deletions(-) create mode 100644 sim/dump.txt create mode 100644 sim/gencfuncs.lua diff --git a/sim/compiled_sim.bat b/sim/compiled_sim.bat index fcf7e99..4ec02ca 100644 --- a/sim/compiled_sim.bat +++ b/sim/compiled_sim.bat @@ -1,2 +1,2 @@ -gcc compiled_sim.c -o compiled_sim.dll -shared -Wall -Werror -Ofast +gcc compiled_sim.c -o compiled_sim.dll -shared -Wall -Werror -Ofast && objdump -d compiled_sim.dll > dump.txt pause diff --git a/sim/compiled_sim.c b/sim/compiled_sim.c index 800e3f6..dca3c8a 100644 --- a/sim/compiled_sim.c +++ b/sim/compiled_sim.c @@ -16,6 +16,7 @@ struct Gate { int data_size; int* data; }; + struct Net { int* state; int* state_num; @@ -26,37 +27,27 @@ struct Net { int id; }; +#define FAST static inline +#define DLL __declspec(dllexport) +#define GATEFUNCTYPE + +typedef void(*GateFunc)(const struct Gate* const); + struct Net** net_queue; int* num_net_queue; struct Gate** gate_queue; int* num_gate_queue; int* current_tick; -static const int queue_max = 65536; +//static const int queue_max = 65536; +extern GateFunc sim_logic_functions[]; -typedef void(*GateFunc)(struct Gate*); -int sim_gate_get_port(struct Gate* gate, int port); -void sim_gate_set_port(struct Gate* gate, int port, int val); -int sim_gate_get_data(struct Gate* gate, int addr); -void sim_gate_set_data(struct Gate* gate, int addr, int val); -#define GATEFUNCID(name) GateFunc_##name##_F -#define GATEFUNC(name) void GATEFUNCID(name)(struct Gate* gate) -#define setport(i, v) sim_gate_set_port(gate, i, v) -#define getport(i) sim_gate_get_port(gate, i) -#define setdata(i, v) sim_gate_set_data(gate, i, v) -#define getdata(i) sim_gate_get_data(gate, i) - -#include "compiled_sim_gates.c" - -#undef setport -#undef getport - -void sim_set_data(struct Net** net_queue, int* num_net_queue, struct Gate** gate_queue, int* num_gate_queue, int* current_tick, int queue_max); -void sim_update_nets(); -void sim_update_gates(); +DLL void sim_set_data(struct Net** net_queue, int* num_net_queue, struct Gate** gate_queue, int* num_gate_queue, int* current_tick, int queue_max); +DLL void sim_update_nets(); +DLL void sim_update_gates(); //// -void sim_set_data(struct Net** net_queue_in, int* num_net_queue_in, struct Gate** gate_queue_in, int* num_gate_queue_in, int* current_tick_in, int queue_max_in) { +DLL void sim_set_data(struct Net** net_queue_in, int* num_net_queue_in, struct Gate** gate_queue_in, int* num_gate_queue_in, int* current_tick_in, int queue_max_in) { net_queue = net_queue_in; num_net_queue = num_net_queue_in; gate_queue = gate_queue_in; @@ -65,8 +56,8 @@ void sim_set_data(struct Net** net_queue_in, int* num_net_queue_in, struct Gate* //queue_max = queue_max_in; } -void sim_update_net(struct Net* net); -void sim_update_nets() { +FAST void sim_update_net(const struct Net* const net); +DLL void sim_update_nets() { for(int i=0; i<*num_net_queue; i++) { struct Net* net = net_queue[i]; sim_update_net(net); @@ -76,13 +67,12 @@ void sim_update_nets() { *num_net_queue = 0; } -void sim_update_gate(struct Gate* gate); -void sim_dequeue_gate(int i) { +FAST void sim_dequeue_gate(const int i) { gate_queue[i] = gate_queue[*num_gate_queue-1]; gate_queue[*num_gate_queue-1] = 0; (*num_gate_queue)--; } -void sim_update_gates() { +DLL void sim_update_gates() { for(int i=0; i<*num_gate_queue; i++) { struct Gate* gate = gate_queue[i]; if(gate->logic_function != 0) { @@ -95,21 +85,21 @@ void sim_update_gates() { //// -void sim_queue_gate(struct Gate* gate) { - assert(*num_gate_queue < queue_max - 1); - gate_queue[(*num_gate_queue)++] = gate; +FAST void sim_queue_gate(const struct Gate* const gate) { + //assert(*num_gate_queue < queue_max - 1); *(gate->in_queue) = 1; + gate_queue[(*num_gate_queue)++] = (struct Gate*)gate; } -void sim_queue_net(struct Net* net) { - assert(*num_net_queue < queue_max - 1); - net_queue[(*num_net_queue)++] = net; +FAST void sim_queue_net(const struct Net* const net) { + //assert(*num_net_queue < queue_max - 1); *(net->in_queue) = 1; + net_queue[(*num_net_queue)++] = (struct Net*)net; } //// -void sim_update_net(struct Net* net) { +FAST void sim_update_net(const struct Net* const net) { int state = *(net->state_num) > 0; if(state != *(net->state)) { *(net->state) = state; @@ -126,10 +116,16 @@ void sim_update_net(struct Net* net) { //// -int sim_gate_get_port(struct Gate* gate, int port) { +FAST int sim_gate_get_port(const struct Gate* const gate, const int port) { return *(gate->port_net_state[port]); } -void sim_gate_set_port(struct Gate* gate, int port, int state) { +FAST int sim_gate_get_port_rising(const struct Gate* const gate, const int port) { + return ( *(gate->port_net_state[port])) && ((*(gate->port_nets_c[port]->update_tick) == *current_tick)); +} +FAST int sim_gate_get_port_falling(const struct Gate* const gate, const int port) { + return (!*(gate->port_net_state[port])) && ((*(gate->port_nets_c[port]->update_tick) == *current_tick)); +} +FAST void sim_gate_set_port(const struct Gate* const gate, const int port, const int state) { if(state != gate->port_states[port]) { *(gate->port_net_state_num[port]) += state - gate->port_states[port]; gate->port_states[port] = state; @@ -142,12 +138,24 @@ void sim_gate_set_port(struct Gate* gate, int port, int state) { } } } - -int sim_gate_get_data(struct Gate* gate, int addr) { +FAST int sim_gate_get_data(const struct Gate* const gate, const int addr) { assert(addr>=0 && addrdata_size); return gate->data[addr]; } -void sim_gate_set_data(struct Gate* gate, int addr, int val) { +FAST void sim_gate_set_data(const struct Gate* const gate, const int addr, const int val) { assert(addr>=0 && addrdata_size); gate->data[addr] = val; } + +//// + +#define GATEFUNCID(name) GateFunc_##name##_F +#define GATEFUNC(name) static GATEFUNCTYPE void GATEFUNCID(name)(const struct Gate* const gate) +#define setport(i, v) sim_gate_set_port(gate, i, v) +#define getport(i) sim_gate_get_port(gate, i) +#define setdata(i, v) sim_gate_set_data(gate, i, v) +#define getdata(i) sim_gate_get_data(gate, i) +#define getportrising(i) sim_gate_get_port_rising(gate, i) +#define getportfalling(i) sim_gate_get_port_falling(gate, i) + +#include "compiled_sim_gates.c" diff --git a/sim/compiled_sim.dll b/sim/compiled_sim.dll index cfdeab143d5eb51ccf0c371f8739c635bada01bd..a43b19bbb8350e0be350a974ad93bd6120b382fc 100644 GIT binary patch delta 13710 zcmcIq3sh9sx!&i%3^NEaBEuVI7#^Ym4hD=GHG_f~4H|q!4Msr$l^{|ajImw@3aHZo z3v4tmqk}cpMAMRDj4{!SkwjyxA=V~pOhQ_lVyg*v)s@&AleynM=M2NiNxN>>>OE_1 z{(pb_-{1cCzh7sc;qNE>8e05Xw@07&?y*&*ijbpzgba`r<1n6&C-H=kiEaDFX{$Iw z)P%&1ZM!-yt&Wf;6p&Uzx>QV&o&rKjcy9*MO~{(Igcy~@LP%;`!bnv`8zE-;a&ttR z*`Kx^(ga%KV5UQgr_XSSnPzB=APH&6V<83ZjOvnNTQN9Uxdq7|DTRK?MNbggMB4&1 z26D(_A!bX)Cb8;y^nny1F^UX2jW=*rZ3*Ggb)?9hQ7YO9{i>5}%yb7IJzVHwDy~m;Xa;hXbYrV1)Ygpk(8_KuJqrrI#whyHyO<~x&j*VDObL&R@TpiNB?ownS96Rp56x4N6YE7 zfU)Z3;Mp5R*9YWgya3}fYSy~d8QhFa|Gkm$b*jhXDQmSl^=k#P;Q6d1E|Pv8pf4EC z41!?LnzL}x;)fSl8*Un{&g`$oVg6mTI^K8u-VvVfc)MnyQ}y>pfw^t>^tWpXndRuu zMEO7ZYa)b<<0{K6iJ&tz84*?(w9N1{+~GDFVJMa*Mo_0_ob`|4j3vj>V=HX`Y(9G&ouo|(_#M_$|FIxircF>ULw{Zl zr!Cq<+7xKetYT1SLjCAUoUs=$sPCjJssrxjxe1|6AxzgyIgKEX#0v(NaSW^z^o3@54W z^=H`DKnjpHYH3&;9LOS%@K*5NYEgFPDUp|czTyUHeytI;8J0os1bU&bw>5|5+Y2a8$XdP zGc)#!`=jWasGlB1KOYf3HeoYs&6Z^J=)ZpgJ#h4R^xr{oyzS8kv$B@_q*TWlk3MoU zHHD7X9>m&(6E8>7M?+^AV$qC8zYq2x4uB8VmPMD@s5-8A^z;e(W@v)_+G18?VUihT z{Z>bQk`Y6SJo>umvPZvEsI2-mm>8a&4#nzF?ZTR}9@F|0x41@CH4Jd7E@0_f9eD## ze=n+cJo-4s(Gom<6!XT641C%|$Z=NPWObbK=z{?E4;#TK@*+WRVXd^}A)cx~ET;7% zt^9&i`rgP??Uk*pAp7E0dUs?!|EEG~4-4ntFQiX~J-}}*qx=nQkI?7!hWMV1Y%D^WDiL~*ej0M{?b&3+^sWA&5%iDx%u(|m5kM2b z9OuF$Oy^v4WdCWMfZj}E{8#&r=;-8dBhNoVmxV|1e_Bc(4^K9^Q00v3_)<18Vdl)< z3&1+M$J&ycWJGTcE~O{KC-9q+>DS>iVn@L)^J^RkGiwB&c7(wtwk@khETxMglK8(Y zp+AjyfPXQmyC))wi}?npnDtEFLB`$B4@agY_z8G$Orim!)RXAeEvireL5pd&1)1&}0YF0x79y7TvyvNHx-L4N ze^*OeqDMvcE@D2`BwL$q*^Fq|n!vhxbP+utJxce&!#KZihM+sv7X7n}s9#Lgu+adq zJ$v*$RkSvyf-l$5n=z66riD};JCz@yp?R^7@UH~W&e#WHDgyqAdkX@nU))4KDu7On zi-;mHYdGtx*r|RQ{5G}#C znQ+AYP7pJ69{oq_XkmQp*p~n_xgGD-gkaS*^cV}hn=k6TfHIGMvB9|Bq}eE7 zCF|&g_?X0>ss!$Q0hoxqE6EH=#;>8*QciPm)HSM;+d!wMn(gnDiPXC!xmA*7 zlAJ5aX_Cy4WV|GYOY-|tk>^WEek#cek~}HNUrTb2C?87RApy0Ltd!((NzRqzG)ZPi zGG3CyCHZ{`bAT3&PMvoBdygmQSPVu-e0^#OzBrOC!&CiZzVqOP(w3C^8jsTc*I|f# z4Eyga$3XwByB<%!@jLp?=&=dTFYxZ?d$81mr!OrF{l$|`L&tm(Z3z>zT_Yt}D8t1i zotn}zOuDfmY#Ad;og^hIQa84{I&B9RWUP_wsM_ zv6Jh_yn)OBq}2w4VQ z2RRq11bPAFn@APV-H_iPv8yymC8P~$3v?Ic%+Z82GJD7cNX-m~JWz^1t;lpi9!2Va zuERw;8|f+N7D&xlj5EU_?MR2A*Fo+@ItINejgTuyZbYRI@>`|@C+UQ!kj@r&XO7v! zwNID|?}R;_V^X6g8goFAx=K~x@8)|sjf!Zd`34QtnBlvGsE&+bd_ zj+ydbT*{PIW+Oh!b|R2%7=R(zeqc%M_>^GZ-7Z=kk>q(v_DS+@BgBso)( zD|HDam&PiHX`P0aqn?U6Nl)@{T0E4gW_YhW5$78M6Oq#2#k7`u9Tie~B0!pR=R; z!<=f47R(5v)iaW`bNtI5uU=~_CG^CMY&-i9_y3U|%$q+qFaMtLY&Ec+g`u4vNuz!Y zlws>OY+O}sqo3xkr%^K_g4oH*_;irnIWygUZDv)l5xXR?$d`;S;Tz%b*%8?mtXv?( zrEwWu7MImk;9BBxb#`^SJ9|6(ItMz*KHWa!KJz}yzJh&4`>OUa+wMnZALX<~qs11+ zwv} z?x~dqf4*pR_wwpdJj-vhJR`%gl3)=*|T^eAoPemoUdYP^e?}#^W1~Ui4MU`km5!2mzPCM*ZzXhKdkp=oK7dlHv zshqRZZ<`G2mp}l(xHX>d;i+Y-NqY?lTWmbdX&y;yw`%5kfao+sn+-(-EQ8HLA&EeY zh?M9ELnZ)W4--Du(AK4`7i`~^@A|iX=(4a_{c|~ zTC_u(T?@p;!VpVM+fyRzkaZ6lcsq~UMcd0cm(cn1tn=lZkrq0>VQNA70(BL^jfoN%qPgXhYjuAH$eJi5maL?y4f;_SKkY@ zS5!-&4j>3ECVoImJ6g)=BaT3-*%5xv&rnho%Q)HGT#LVKG~`bk;{=3;U=!4qpjUSS z(r{Gwd<PG4(FVj#GZ*zjk8ZGb@d77Ch1IzWq)UbjW8KA_z-PlE+bTn*0%3OrpUom51u|p}5Vs83 zG#U`WRl-+oClJ>l;td46?V;sdE*;mA7*dBmVt5giP52v6Kd9HEv%AwK=&-BHvf&9zOyR@8{w^8iM%U{jR~Tj zM9nY8;^#R=y7@_gbkCEfkWWzGjJoWI_QRI(`RjVt&=*gpa2sjxQwFs^CNxOcHr;wi z%SF+LpDM@1gu|RaE#8^Pouk^P6ZtN$iH51nrbDpN!6ufDdp3Y~M^W>0S+iXjSj1bRL}*=u&no=-9C#tDLovqXUOce6Q%hQ;Hf} z6gBb{4qR6_a9O15P|(>Fbh!$;s|vb41h6xkEo7PV+3ZJ98IqNyV0%Zw)-O7@T|u`@ zL6@eWJE@=>5a}8fbPE-9?4?EK?}Q@?x;r9Woq{f3K^Lo_JFK81(ZbAP8=S1=Z1!#= zL$dr8bUPGu8j-F_L6@eWyNf9)YhXg1kFE@tPLyBeXyh;B)uC8Nx@dNmj2R2nf}ewY z+f5!T#AgTjHUaa-UzXF14&hYbV|nj84d2hviTmT#g{W2+Bdtvh54CQ8Ie(0!u6h$^ z5msj??R+6I<@TVTWwtdnm5+6fOpjef-YA<7p9=wr=aT+={70orYPuw6m-uh=#B|=vnmvHL*gQJ z))#6ib`z?7bkdYKjzNi`8P95Xw;1%wgI2DDrXNb=J9wILD8cXE{i^mCOstqiWr?EQ zFhw`64-T=n-Icy}y?drew@^VBq@cT|pes<&^~O-$ud|aBZ2k(iOZ3r~6Zy+x^ZAMj zcYinpS?3karzo256X~o9y4wo69tB;fg05er%T>_bRM5SlpbJ#c4Ty9W1>JQ8-4O-d zO}rLM`-(JlcSO1=3c70wy2A>(%L+OYD@?433c5=Qy8Q~elL|VGNSCFcJFlSIt)P2R zL8pst|Lu<)g*^(g4h30EluIu8w$E+1>I%^ol&GqRnQ$#&^0RPRx0RHMLOjo zI;^1EqM)0ppfihfMum6#6?8TQ9lN~BXWc}RE>=OeTR~T$po>+|Swy->1zm@Nu0%l> zq@c5kbYTj*W(D0c1>M)aO-fo~1+jGCl^>aQjS9Af3bsB4+Y-^aAcb>V6mnnNb`P9z+c%T&~T%#^|gRlIlN zvt(KE2HUz~+nOQYogTvrQy=?C!7eizUgDekT5iY_LJ4~VWA~sK_K9E{Abg2%)kovn zq}qjCKD*2Wt+K7J-hlfe{>71_pEX9%z9)rSRnl?cR%L~FK7dw0;EvV`(G@_CK;T++ z83Na{yT?;fG?>nkt52+6x3+S1I$SQTEb)4K677+=A8}R9Tt&&{*W*>p#k06)#juOr zt^m4xXM8XU$wlDCLI0M&5pMqsh#S#CtN8A~p6`L=OCu>Ffmr;@q!}S1DQr8y!*U{$ z4aCft2a#ML-nS~zrT~cdSQ3%dg@6Wx7hEq<0}$`+fhQ{})~~`_Dd`$~2}Xvr!iGJ8 zNFvc*AV#RZZk*K6xhG8ab11OH4)yCJAQNTCS3un8AGbop_x}FyWTBdIh*1>~v^4~229gSdnTphVpjOcPPG;JVL+e6Jef?rz z-qV~XTtcsX;VTAmR_1gS5cVkTS54-&n@$M81^)?tglf(yl;a%Sx`}0T7`!CWz_e; z#syS#5el&YDM8jZ-gAKHWV=~mu<$8us8LNYJ@A%ET@PDxEWPknynP2#Wz+{45fI;` zILZ)N6wfh4*0Fvd-t(KeiCE!Z?#>TRw+(AoR~A=bWy#_?+zz9OvUnr|VUMr*dx3ag zTzImr?=dfXqZ!+En@`lWz&=C9^gN)e_f`8j!48CgPVRTqlZ9b3+S+yb{ zsj}hN45V3R;{f6>b7&9akue_zf)AgDw=-wI2lcwF@D`9NQ2J)PKPH9zxC{kyM>bIt zb@cGtrpW0ixGAHX3k27VFW!!~uY$^En6J}YfXKI@9Y9#iKAYV@G_ns(zXH+<8#pPA zLJyF;vSvR7vP2fD{!~B(vTFY9gR=~Y1QJ9~ykoGZLqmlj2h3z3kuu8pK)fF@m@|Zw z0?Cq%M-7mk!NtIAnt^yfxrnu%17bvpFXXS-0S%x>KIl9UG8hNx7k2g!K*V>1e+ZjK zS@YL{grTBuF|hxSssh5A7Ms_HLdD~Yd3q?OryQCFqavX(Z?y-3SY#`>m=S@~=X5;~ zt1M<6K-@B$13;J~zUJQwWy?bbU4>CDtbG0G2Xa;xSoRZ-d5{|0MMY^P_G(##LSR!g zXv5lw2eL-yVipkldD(Qz2jug5MNOsfs&`Pf6;#4zi>%gGAQo9;JAwEn{6_q`vbNGz z#{RoY9K^Ef(o*JBf7~F%vd^Ph9VEDrULD!p_wH~$eC~SNikakrVq59Vn#xrxa@Vde zDP1uW{}~iTTkb`@^z%mdbYNT?PTowXvPLvo@tmUX0SZQ*ut(u zQ{vnLV=;{Vs@VRW4dW)D8rqn8D|YnS#43D<#d%D*X91vX0a)pQ1C1?-SF8OHJ$s zq(_*`kBOOay@(OnLjJEv`IVHN$3$hu^((0*JRhk6B~{8-BQ=PW8DTl!iIfRGl}zGC zkg_60hBfgwk+LayTlhCfl_{xKo)MiHSD~b~^Myz`l+=#C#^{HHm`#jbddI}$V={9Q zE%3LW-+5cxr-I#^K59PFpT7ci<}tp7%u;VI+s~KBWRCuF9%J6vwyR>&?n}siArpTB zD@}ZNOhMAa$SVliy$-$IJNbbwekvwk+%S*-J!W$HKZ_Z&dzro6?@V0g3A{*+DfN69 z>~GWkxslI}y)LE^Jey2>Q*258B`BYcq1x@<#B)dlf*G)NPB0j(_1V3~rzEn({gm@@ z2LCYDSoW`^kN^c=@hz)vU465??K6|zJADdN+RxiPZ+ZUcNh$Tb)^dwi_qUC}{LX2C z5yKf<>1N) zWL_JW71MzB>`LdIaoIYlG29lPl2lacy(!gmvSh*=%e*TM#r%V~v995EZ!wx`GkB?0 z3HG*AraMm7CS{h8_lhlWm$8MSYYg@(an27x#$4m!)xWZ+=4Y~b@D`&`rrZ%K~D?nyjFnI7XG zAWA*DBa%pbUIKO95GRu|-PEAs)y1pA1FF<({5dj~~Jyh6vm*JEXL;@ZX82;Ox>)S9F2hn`-yotoM$W%roi4X@Pnf+%vDZUWCqXp@W8_!~Cf;nYx1APF(+p+B zGiTXPQ-me`WGY5+u?$OHx3>JQ;ya7)DqefC_;?jGN|7Yrt4+9>ZPsmjEuB&tMv)!9;ye?@1>iK}e^VVT#k%roljV!2k2cv6|oXl?o! z6e#vawflEA6njoA^SoE^zP)q$<;}EM**oW)xA5^{Sl9_Mpcmal5?tr1_ zPs|5pRWR;_25ho>-U!c!3Sg@F5EVHcl=;+YoKOT4q~>Bilp+y$c(l~sBAN5@bFR>M zgG)jc=KM&7?Ai){d;-33Jyoboz?YB+jF&6ycSw!696A4JsJi6E59^D!SYP7BnsmxLJJ;#7}89%_{szDrOAxpmHFL@w*?Z6}49@9kW) zSeiKA!V7k9j91@&md0D+Ldk^WUH_0)m1!7E;~dNdH?G8pJBg(wd9kPPZP|}B;NEjl zhnT2Citm)WMDeBPQ(7`tq>w8U2eILxnq{aGLnrz2(Fl*iT&!bgTXesdovigK9xm1s z*ct6B@w)U2W}a})rj@cpSt>`JFBZ~DJZwRMpUPu!Q27PzXN!{#`b%zLPGt=x&L3Yx z$Ms{_R+3$jYp4x?YRpgy6Yzqd{g=^`X>#7JC&oqBq;$Zyh=F zwxXS|Z=uZ_eLx=0C$a1uktjLF7{=ixq8uerF0{GAdh)0Z?S>L#iRUy(#}VmhBK6EB zQtA@)hrDKieX+#;u*|-f*q9l zZ$NNV1C~r}L#r zmblyYQ^xd_`}vNfU1HUG9!yFRSFGow4U5E>^}NC`HSv5cnNVs?4H|E4;|C2{;=x+} zs-aRWuI0JOnHfj#qrOOLZ-ncE#x$fbw(co_PhSn}7|GWq7mRoVZJ}Y2PTAL}x!;S2h2a5jo=eYW~j=i^L5D zeI+Bu2xI@853juLmE$$&&>q8C`8*1%gwEfr@b^4CVK6hBVjV~hpjvkAP^xI(N< z;Ex%{PA^G-I?i}W?RTIO>HPKr4q_~D9Wo01mtuj^#wF)OQ%-UM|J;}%el?6Iri@Q5 zt0Ws+a_#M(J58wAGMSn>qmq}Vj5kbJheI+PgXUmjjjiNuDUM-Jp#%_>M8zvpeA-9Omtwlg>FF3mUzbih5f0LF4{yh8Bw^Ok3WOEF&G4Yi1mp#c(`26S%egr%NB>PZVfJl& zdD__Q-^NOM=OioxdY9jkj}~PH%o5oq}mW=x~Z(>gr_J*RasN-StJwW7|S%f9jIuB;_~ zXUb{aM~Df~Jx+h*X8G*#SfPQVMXmgfvAs!`bd+~hzx8fx0S{Vu+PIsd8DFm+`o$%jj-|UkD-%KI`6ITA z7nlu4AJ3_Pl^|-!Ye~CL!IIjx8{k)+hZdfsk_-0sZ<2ODCgF1lZH}v%X_h$ zeForCtuz5)Rr*;<-iTyiD{Zqc;Jm;Bb0`)?v3n>6LKgT6f5A5km13S@Oa!JNFE9^( zeCV~^&|yp&)J1mBpG!O?Ig{+3KLiGVW9wjI;0ua*zO#E?54DNXw!7(^<7iHJJi#fT~*Z(Z7eV-~CR(Z(|vB5yhDvwJRF zJ`viNA%nRu;>b+$X+=Jw$Oja;U6Jb)xl)ny6iH`vDsNWg2t|rnO5{@B41VH zvzvK>>7RlF(7>beidMN*xmNV6jUfm0CSk4WiI?|@RlUsdF@iaeyq{ffL# zkxhzRr^uCxoF_|H?oQb5Ef|i;v?KTHa2u%FIirF?u3!<$H8B4m1{d1pi#>c^m>yEcOfr zohk9LjrmoKO>Au0Sl(FUEZ^Kx(^6xa zZIWd9#>!UHWD|}CQvUi%XU%`2P+48wG%+xO1VRK7T z$NcGqwR~4}`dGi5p;zQNMbX+T<>&Od^Gt$kHfv#x>~4fjY%BiGMT>7lC}z$0SHqf^ zlhq@yk(pR6t3{gJhl#C|>H%g>hqZzZ=)cwQ?Bhy$J*e#KO zHtjCECZDO(h1XPI^QiNSu1PcapBf@PcwJ!nNC0WWHEGi|>Hc=!WLe=dFqVKoUtSH6 z!DM{rM4XLa>^ht=QxUg9x)3agyCHvqU`5;q`6xmm;@yx>AQU0q3)zB~m)WEbxd5+8 zC5V?nZbK*~9P%9Y5?2`#{j{l!W~>@a0}IAS6o-5T;qQq1A*W?9_C4Y@$oU9*ti)xIw;&`SUIAH+U_jgfImd)b5w}79 z6C0~_GmRYVnBCaI?Z_axHy0#``yjWD2MOYC$WIaK5FdoxWPw)@cR(5@z(B-Fev05D z9mwGm;T6Im%?OVoZiRFrbR+JDOmtlb7m*U=ZiHUMeUNV=97nt#@6DxIp@le?%A{JRiRtAbfMpLEHd&0bvy3kSnG#mVj8Fu85b|pTTT|bz=saP6 z{+tOqk?E!iRv{!&p)g#}hEI*R##QJYv1Kv-=zeiPVB9<MEigQDvfE zAnj1em?#!APqYdZeEF2o{Hc6H->&>rAuBPKB??PexDblybxgl5+8R|MI)pO*(3Hl$ zvZ4;bCH+6f8(P5&Q@=hiLAkdf*BK6M_Z7ia^tahBpm;8rn4MnGOAh zsY26)<{3>RnkF>Qz6GDY3lKt17l!;4L}nt`5mqCtN7#noMR*M1HwY&Y&La#Ue2(w~ zLgIc9Gl7XLibXRWesYS%&n|ITfrqgKmdJ*)B>Y^IjI~3xeN{I!utnH!7Pd52m6z1J zHdWV@FAO8gH#w24YH4b!X>^u5>#Oc&;f;(9?RkuLz{rfq4Uu7+EU&JSH$_sC07-j2 zHcjc*BT^w`aydbcO-;_QQuDP+<%Ez9f9s@i92LEWTTa3{zS=su&uQH&a9?!Ytg>!$ zk^Iyh!CZL){f7{G&H(E;gt--gT>xh7!EaqITaT=_Mv)Fh?pEX@itJUSUy*-O&X;);KBJWgW zwIZ7oxkHjz40kKQK1DvH$U};JMv=!9`LZIT0wW50L zjQ@LK>4KHZ7nDw$n(v|&5zi=8_CFamHgBnFa^_3y7I3e+dBI9lr_@F@%1_@v)<$I;{N@%41~NXt`i-|e%H32_6HuLzaKUDJKfIS!;Z*ylI3_+Kt_1)NTLP!Xi zcp0j&^6$ca#~!gPiuXG*Votyh6>{{ih?*#B7Q1C6M}RBk=qyCta+K}|IHGvP=0edX zA^f?`DPk{0(|SJHEDEdmUz@Mv(aou@RD48nN7Ei_!Y)hCc!)AxBvME^Duk|1^v6W% ztfIoPkw`5Np9*Oq9eh&^*VWbl$f1Jv11XD(R5}c#LWLXyVvUc~IRnH!gycJGTAiq? zH;Qx^ixMm_q?i{sXY#|&>-oX$vBLo4P(gVPUfDio*lfhnMx@<5Yx|hITM&m|kbV?@ z$0Mkp_fVrhice}W3-x?OOJ>Z+00!du4^3%&UrS2rw@8{$OSrLdsBTcCKFBY}dvtvx z{G(FHgMtaQz_Bnb)Ch1!Z`mNc#5Zlp=Fi+4&r7zCrq&I@JG@|5HvhquF1d6_O)&7xjxoY-__wW@G5sj%OXT^EjMNVh^(RJJ z@CA?o$tS#Fn1VcW;MQI7ymd<&zXew&rrZ<5@7lhYFLA~5-tAX} zS9s4o*<#sn$rrYJ^Lgryr}N%~$@Ht`dSPRIM}&GvnS3LIO|TpUnsEi|2ZGn(!rm``*l$0xFPAtr}%R)S;9`bMUN==9Zo2iR+MI zGlW`089RUssNCxX!sJ=|5~2nF; z6b3m2#%e-WmQk07cpd-Mo^d>Bd#q>@_(hjlaPpulJCDBn$}YjWU0zq&Slv+5G~^Jx zF%iv3a>;U91G+~=T3-u9kC71`94$ahm|9`PMTknr1H@VIvIkZM(9CRQ}km%$RN{yGN5-U4BIUSQ^6IZvyF7As2xR;>9C8q`w1lRHc&u z0(vnC>r4V-z$=W5gdFUac*uzxFm=acv4GL{=I{ge0y%q^&OaE#QnMlt~JQDKvI0iidn zFyaG3?^jJyY=Uxj=Q#D*^lVV!@U0LZO^($I${d|r^1LLPy& zhV~7@0e(+=HU{27{9VpZwr7j|>9ov^t93Nh;H`!AYf3^PV-F41#0Rp4HM{_S*YUUa zWQwz6`ISB9I6La2XE@KgmoEQ_t7G}B`}2kkNKDiRQ~BHXjN$H%5^-HD|NZ@DadRyH z0%AujAJLH~H1U}o*`g@}^SzcxU+*xB_E`QY1oVe{%!bvd;vQ6ygb*eCLg0g&Qn9q( z=E;olP-`>zPLG)w9)Dni@R4L_wPff%zUqN&(JJRdP<}wlcTj#_5=MtSg|=2UH`n0! z6IxFgD_0;}203U#xvaq4nb*3OzTaTXz%nD~(&WLmr&!*ZfY3S;1^>~`^x4qt&Y_)2 z+#&Mb*0KDtu2`|c#QVL4OHQFfG3HS!znph60df<=YQxPqyoAj*DOC)4>g zbg3G;ZVlZh8ajte_mYOrprJdUp`)p-wyssCJFcPAYv_C$y7L-3w@mk(hK`)C@>F4m zhVG1pu0y7KMngA=zKEWQ4L){Lq|70RTa#5MniW%raP>m8_>|zY3L4V z=(=UPZVlZ94PAwX?ja4`QKFl^Si{z@VOyhN+oxgcm5n=~p`$~h%29=MP*x!`c5CR4 z%XANF==>TwyM}IuhR!e3?bXorYUqkIbk!QVGcw(74PCc}&Z42CEnaE9vI6wWbZ!mZ z0S%o=Luc2}U6AQ^Xy|+zx>OC_tT0_I-q*3dWr}>RFC*q*tltABI;2eOMbwZLT3w;S zeovW0NN6jA`qRD*qCu1n9}kMs;RAFgD{L2-!qaw-W5Z7 zRQWrhtf8&as#)%jYufU?rt0h!Ce*_}dsm;S!-i5m7>E*n}v) z{HJ)ums{qST2>^t>_W)=h?YT*I=woSHPo_JO)oJ`%f^LUrr3K_rmN7u2-VVyHi6~r=c5UeBxfScw9DMjiy9}rbIwvzyRKy)JvLQrlaGx%GT*?G;{+R zx^o)3GcsM7hOSIQcR@pUN<-H#)0JxI>>9d$4c!q9-36J>uA#GO=+0>9_G{<{%-nzA zM>ggn4Vz!X)~aC($i~?;##uFV$2D}-8oEK5ZnlQbqM_^6&@I={U6tr^i!^j54c$?G z@ZoHcWlQs}P*WgPQ=nT@|2R$kdYR6up)+Xc4ru6@hRz_<(YvmC*y}ZPJ`LSqcuiDR zg;bf&qM>6Nx(*H9pEPu)Y~K6mj|{A<*Dg?nZVj7X!)B3(|h& z(a^2Y(3Qz_2^zXH8oDwKoh?kKY=zfH@r)a{h8u)J^utazK6s=DShq8e=<+l%2z#^88aV@gFk8j(D);=0XC86AIXqv z@8>ri$&9-dr3^zB_>QEws)5jY0cX?X#nT4Fugqf^`3aDaA7td0R0g;(VtRbsKQp8x|J;TzRFaNKAu>XT9(?0hkQ^WtXhXOe z^W(Vt7iQNAWLUBzE4UL#stR!ep%0AcYK6`VMD3M>gy0F{6EdvB^E@GjNTi>5OjK9M z(DzFLb*OCrL?SXp5K%Kwdjv8Lhy@6#%9Z5hXASM;{MIimi3_J9%Kte|$xl}ZMUpcC(Y$T9=)kre~vBQFJR~IJS zj&`W1S3oJWQ;V!}9bF!QhfI;~TL&HLgK#(O1!6)nY~s%n_|s3DT~CoJp72LfSzOk|a>$fS?E2J|Bog$U%V(H5~o^bVJfD8;R z8O_e7#;T1D<}gL_OiMyvu0g$Fw=6-iGZ?gCWIa)<(A*=P9v~emo#%k`s*u-QfZR|fXCVjAUw~L3!=wLeAXX@ZbrNt#^o%Lw z%+QUe149UkvlQqIswy)BF@Pk@Y#oV7jGvYxAo}l*4j^QVY)~Z-dcys^O@llDgiH)m z)AjJsuZS|wQ$TF0mFJa_xRPp9wd?~T%8qpY6(H)>KN=PjW!NASwLygx0XYt(ut5uf z(62@Et}5Rz!!7iFQ^<`(uog;=A%n2;HPkes?^QY*q0>F2L#1{ADN`A}ABa^|{nJ3g z%_whalrFQiy3CQ)pMz59?U7oD8`MDDs>=Qb#Eu+!x!!``e(5G$ohig4-E~8L#}HE6 zR8s?h9UVd_6@~l3ZW{Jfk;sh3zBiv8E{-ax*Iv@)gU{u-G@0u6>VIb4d1=}@!PoS`?;Y@yd%QJLRWVCO#km{Ox)0AK%Vl_#Sz+@g?(SW^tupV zztK@HA5-{qFF&oPBn<(6`zr;h|GR&Q%8cQ!OjmmACJthBBYHyd#; drm|XV40oTh=;RxWPn^0tiO3?2ihFIl@E;6Iy*U5? diff --git a/sim/compiled_sim_gates.c b/sim/compiled_sim_gates.c index 9a47598..659abc0 100644 --- a/sim/compiled_sim_gates.c +++ b/sim/compiled_sim_gates.c @@ -1,10 +1,6 @@ -GATEFUNC(Diode) { - setport(2, getport(1)); -} -GATEFUNC(Not) { - setport(2, !getport(1)); -} +GATEFUNC(Diode) { setport(2, getport(1)); } +GATEFUNC(Not) { setport(2, !getport(1)); } //// diff --git a/sim/dump.txt b/sim/dump.txt new file mode 100644 index 0000000..bbfa7b6 --- /dev/null +++ b/sim/dump.txt @@ -0,0 +1,2469 @@ + +compiled_sim.dll: file format pei-x86-64 + + +Disassembly of section .text: + +0000000066341000 : + 66341000: 48 8d 0d f9 5f 00 00 lea 0x5ff9(%rip),%rcx # 66347000 <__bss_start__> + 66341007: e9 04 1a 00 00 jmpq 66342a10 <_initialize_onexit_table> + 6634100c: 0f 1f 40 00 nopl 0x0(%rax) + +0000000066341010 <_CRT_INIT>: + 66341010: 41 55 push %r13 + 66341012: 41 54 push %r12 + 66341014: 55 push %rbp + 66341015: 57 push %rdi + 66341016: 56 push %rsi + 66341017: 53 push %rbx + 66341018: 48 83 ec 28 sub $0x28,%rsp + 6634101c: 85 d2 test %edx,%edx + 6634101e: 49 89 cc mov %rcx,%r12 + 66341021: 4d 89 c5 mov %r8,%r13 + 66341024: 75 7a jne 663410a0 <_CRT_INIT+0x90> + 66341026: 8b 15 ec 5f 00 00 mov 0x5fec(%rip),%edx # 66347018 <__proc_attached> + 6634102c: 31 c0 xor %eax,%eax + 6634102e: 85 d2 test %edx,%edx + 66341030: 7e 59 jle 6634108b <_CRT_INIT+0x7b> + 66341032: 83 ea 01 sub $0x1,%edx + 66341035: 48 8b 1d d4 31 00 00 mov 0x31d4(%rip),%rbx # 66344210 <.refptr.__native_startup_lock> + 6634103c: 31 ed xor %ebp,%ebp + 6634103e: bf 01 00 00 00 mov $0x1,%edi + 66341043: 89 15 cf 5f 00 00 mov %edx,0x5fcf(%rip) # 66347018 <__proc_attached> + 66341049: 4c 8b 25 9c 81 00 00 mov 0x819c(%rip),%r12 # 663491ec <__imp_Sleep> + 66341050: eb 08 jmp 6634105a <_CRT_INIT+0x4a> + 66341052: b9 e8 03 00 00 mov $0x3e8,%ecx + 66341057: 41 ff d4 callq *%r12 + 6634105a: 48 89 e8 mov %rbp,%rax + 6634105d: f0 48 0f b1 3b lock cmpxchg %rdi,(%rbx) + 66341062: 48 85 c0 test %rax,%rax + 66341065: 48 89 c6 mov %rax,%rsi + 66341068: 75 e8 jne 66341052 <_CRT_INIT+0x42> + 6634106a: 48 8b 3d af 31 00 00 mov 0x31af(%rip),%rdi # 66344220 <.refptr.__native_startup_state> + 66341071: 8b 07 mov (%rdi),%eax + 66341073: 83 f8 02 cmp $0x2,%eax + 66341076: 0f 84 e9 00 00 00 je 66341165 <_CRT_INIT+0x155> + 6634107c: b9 1f 00 00 00 mov $0x1f,%ecx + 66341081: e8 82 19 00 00 callq 66342a08 <_amsg_exit> + 66341086: b8 01 00 00 00 mov $0x1,%eax + 6634108b: 48 83 c4 28 add $0x28,%rsp + 6634108f: 5b pop %rbx + 66341090: 5e pop %rsi + 66341091: 5f pop %rdi + 66341092: 5d pop %rbp + 66341093: 41 5c pop %r12 + 66341095: 41 5d pop %r13 + 66341097: c3 retq + 66341098: 0f 1f 84 00 00 00 00 nopl 0x0(%rax,%rax,1) + 6634109f: 00 + 663410a0: 83 fa 01 cmp $0x1,%edx + 663410a3: 0f 85 aa 00 00 00 jne 66341153 <_CRT_INIT+0x143> + 663410a9: 65 48 8b 04 25 30 00 mov %gs:0x30,%rax + 663410b0: 00 00 + 663410b2: 48 8b 1d 57 31 00 00 mov 0x3157(%rip),%rbx # 66344210 <.refptr.__native_startup_lock> + 663410b9: 31 ff xor %edi,%edi + 663410bb: 48 8b 70 08 mov 0x8(%rax),%rsi + 663410bf: 48 8b 2d 26 81 00 00 mov 0x8126(%rip),%rbp # 663491ec <__imp_Sleep> + 663410c6: eb 18 jmp 663410e0 <_CRT_INIT+0xd0> + 663410c8: 0f 1f 84 00 00 00 00 nopl 0x0(%rax,%rax,1) + 663410cf: 00 + 663410d0: 48 39 c6 cmp %rax,%rsi + 663410d3: 0f 84 b7 00 00 00 je 66341190 <_CRT_INIT+0x180> + 663410d9: b9 e8 03 00 00 mov $0x3e8,%ecx + 663410de: ff d5 callq *%rbp + 663410e0: 48 89 f8 mov %rdi,%rax + 663410e3: f0 48 0f b1 33 lock cmpxchg %rsi,(%rbx) + 663410e8: 48 85 c0 test %rax,%rax + 663410eb: 75 e3 jne 663410d0 <_CRT_INIT+0xc0> + 663410ed: 31 ff xor %edi,%edi + 663410ef: 48 8b 35 2a 31 00 00 mov 0x312a(%rip),%rsi # 66344220 <.refptr.__native_startup_state> + 663410f6: 8b 06 mov (%rsi),%eax + 663410f8: 83 f8 01 cmp $0x1,%eax + 663410fb: 0f 84 ef 00 00 00 je 663411f0 <_CRT_INIT+0x1e0> + 66341101: 8b 06 mov (%rsi),%eax + 66341103: 85 c0 test %eax,%eax + 66341105: 0f 84 a5 00 00 00 je 663411b0 <_CRT_INIT+0x1a0> + 6634110b: 8b 06 mov (%rsi),%eax + 6634110d: 83 f8 01 cmp $0x1,%eax + 66341110: 0f 84 ba 00 00 00 je 663411d0 <_CRT_INIT+0x1c0> + 66341116: 85 ff test %edi,%edi + 66341118: 0f 84 82 00 00 00 je 663411a0 <_CRT_INIT+0x190> + 6634111e: 48 8b 05 bb 30 00 00 mov 0x30bb(%rip),%rax # 663441e0 <.refptr.__dyn_tls_init_callback> + 66341125: 48 8b 00 mov (%rax),%rax + 66341128: 48 85 c0 test %rax,%rax + 6634112b: 74 0d je 6634113a <_CRT_INIT+0x12a> + 6634112d: 4d 89 e8 mov %r13,%r8 + 66341130: ba 02 00 00 00 mov $0x2,%edx + 66341135: 4c 89 e1 mov %r12,%rcx + 66341138: ff d0 callq *%rax + 6634113a: 83 05 d7 5e 00 00 01 addl $0x1,0x5ed7(%rip) # 66347018 <__proc_attached> + 66341141: b8 01 00 00 00 mov $0x1,%eax + 66341146: 48 83 c4 28 add $0x28,%rsp + 6634114a: 5b pop %rbx + 6634114b: 5e pop %rsi + 6634114c: 5f pop %rdi + 6634114d: 5d pop %rbp + 6634114e: 41 5c pop %r12 + 66341150: 41 5d pop %r13 + 66341152: c3 retq + 66341153: b8 01 00 00 00 mov $0x1,%eax + 66341158: 48 83 c4 28 add $0x28,%rsp + 6634115c: 5b pop %rbx + 6634115d: 5e pop %rsi + 6634115e: 5f pop %rdi + 6634115f: 5d pop %rbp + 66341160: 41 5c pop %r12 + 66341162: 41 5d pop %r13 + 66341164: c3 retq + 66341165: 48 8d 0d 94 5e 00 00 lea 0x5e94(%rip),%rcx # 66347000 <__bss_start__> + 6634116c: e8 9f 19 00 00 callq 66342b10 <_execute_onexit_table> + 66341171: c7 07 00 00 00 00 movl $0x0,(%rdi) + 66341177: 48 87 33 xchg %rsi,(%rbx) + 6634117a: b8 01 00 00 00 mov $0x1,%eax + 6634117f: 48 83 c4 28 add $0x28,%rsp + 66341183: 5b pop %rbx + 66341184: 5e pop %rsi + 66341185: 5f pop %rdi + 66341186: 5d pop %rbp + 66341187: 41 5c pop %r12 + 66341189: 41 5d pop %r13 + 6634118b: c3 retq + 6634118c: 0f 1f 40 00 nopl 0x0(%rax) + 66341190: bf 01 00 00 00 mov $0x1,%edi + 66341195: e9 55 ff ff ff jmpq 663410ef <_CRT_INIT+0xdf> + 6634119a: 66 0f 1f 44 00 00 nopw 0x0(%rax,%rax,1) + 663411a0: 31 c0 xor %eax,%eax + 663411a2: 48 87 03 xchg %rax,(%rbx) + 663411a5: e9 74 ff ff ff jmpq 6634111e <_CRT_INIT+0x10e> + 663411aa: 66 0f 1f 44 00 00 nopw 0x0(%rax,%rax,1) + 663411b0: 48 8b 15 a9 30 00 00 mov 0x30a9(%rip),%rdx # 66344260 <.refptr.__xi_z> + 663411b7: c7 06 01 00 00 00 movl $0x1,(%rsi) + 663411bd: 48 8b 0d 8c 30 00 00 mov 0x308c(%rip),%rcx # 66344250 <.refptr.__xi_a> + 663411c4: e8 37 18 00 00 callq 66342a00 <_initterm> + 663411c9: e9 3d ff ff ff jmpq 6634110b <_CRT_INIT+0xfb> + 663411ce: 66 90 xchg %ax,%ax + 663411d0: 48 8b 15 69 30 00 00 mov 0x3069(%rip),%rdx # 66344240 <.refptr.__xc_z> + 663411d7: 48 8b 0d 52 30 00 00 mov 0x3052(%rip),%rcx # 66344230 <.refptr.__xc_a> + 663411de: e8 1d 18 00 00 callq 66342a00 <_initterm> + 663411e3: c7 06 02 00 00 00 movl $0x2,(%rsi) + 663411e9: e9 28 ff ff ff jmpq 66341116 <_CRT_INIT+0x106> + 663411ee: 66 90 xchg %ax,%ax + 663411f0: b9 1f 00 00 00 mov $0x1f,%ecx + 663411f5: e8 0e 18 00 00 callq 66342a08 <_amsg_exit> + 663411fa: e9 0c ff ff ff jmpq 6634110b <_CRT_INIT+0xfb> + 663411ff: 90 nop + +0000000066341200 <__DllMainCRTStartup>: + 66341200: 41 54 push %r12 + 66341202: 55 push %rbp + 66341203: 57 push %rdi + 66341204: 56 push %rsi + 66341205: 53 push %rbx + 66341206: 48 83 ec 20 sub $0x20,%rsp + 6634120a: 48 8b 35 ef 2f 00 00 mov 0x2fef(%rip),%rsi # 66344200 <.refptr.__native_dllmain_reason> + 66341211: 85 d2 test %edx,%edx + 66341213: 48 89 cf mov %rcx,%rdi + 66341216: 89 d3 mov %edx,%ebx + 66341218: 89 16 mov %edx,(%rsi) + 6634121a: 4c 89 c5 mov %r8,%rbp + 6634121d: 75 54 jne 66341273 <__DllMainCRTStartup+0x73> + 6634121f: 8b 05 f3 5d 00 00 mov 0x5df3(%rip),%eax # 66347018 <__proc_attached> + 66341225: 85 c0 test %eax,%eax + 66341227: 74 33 je 6634125c <__DllMainCRTStartup+0x5c> + 66341229: e8 92 09 00 00 callq 66341bc0 <_pei386_runtime_relocator> + 6634122e: 49 89 e8 mov %rbp,%r8 + 66341231: 31 d2 xor %edx,%edx + 66341233: 48 89 f9 mov %rdi,%rcx + 66341236: e8 75 17 00 00 callq 663429b0 + 6634123b: 49 89 e8 mov %rbp,%r8 + 6634123e: 89 da mov %ebx,%edx + 66341240: 48 89 f9 mov %rdi,%rcx + 66341243: e8 58 17 00 00 callq 663429a0 + 66341248: 49 89 e8 mov %rbp,%r8 + 6634124b: 89 da mov %ebx,%edx + 6634124d: 48 89 f9 mov %rdi,%rcx + 66341250: 41 89 c4 mov %eax,%r12d + 66341253: e8 b8 fd ff ff callq 66341010 <_CRT_INIT> + 66341258: 85 c0 test %eax,%eax + 6634125a: 75 03 jne 6634125f <__DllMainCRTStartup+0x5f> + 6634125c: 45 31 e4 xor %r12d,%r12d + 6634125f: 44 89 e0 mov %r12d,%eax + 66341262: c7 06 ff ff ff ff movl $0xffffffff,(%rsi) + 66341268: 48 83 c4 20 add $0x20,%rsp + 6634126c: 5b pop %rbx + 6634126d: 5e pop %rsi + 6634126e: 5f pop %rdi + 6634126f: 5d pop %rbp + 66341270: 41 5c pop %r12 + 66341272: c3 retq + 66341273: e8 48 09 00 00 callq 66341bc0 <_pei386_runtime_relocator> + 66341278: 8d 43 ff lea -0x1(%rbx),%eax + 6634127b: 83 f8 01 cmp $0x1,%eax + 6634127e: 76 20 jbe 663412a0 <__DllMainCRTStartup+0xa0> + 66341280: 49 89 e8 mov %rbp,%r8 + 66341283: 89 da mov %ebx,%edx + 66341285: 48 89 f9 mov %rdi,%rcx + 66341288: e8 23 17 00 00 callq 663429b0 + 6634128d: 83 fb 03 cmp $0x3,%ebx + 66341290: 41 89 c4 mov %eax,%r12d + 66341293: 75 ca jne 6634125f <__DllMainCRTStartup+0x5f> + 66341295: eb a4 jmp 6634123b <__DllMainCRTStartup+0x3b> + 66341297: 66 0f 1f 84 00 00 00 nopw 0x0(%rax,%rax,1) + 6634129e: 00 00 + 663412a0: 49 89 e8 mov %rbp,%r8 + 663412a3: 89 da mov %ebx,%edx + 663412a5: 48 89 f9 mov %rdi,%rcx + 663412a8: e8 63 fd ff ff callq 66341010 <_CRT_INIT> + 663412ad: 85 c0 test %eax,%eax + 663412af: 74 ab je 6634125c <__DllMainCRTStartup+0x5c> + 663412b1: 49 89 e8 mov %rbp,%r8 + 663412b4: 89 da mov %ebx,%edx + 663412b6: 48 89 f9 mov %rdi,%rcx + 663412b9: e8 e2 16 00 00 callq 663429a0 + 663412be: 85 c0 test %eax,%eax + 663412c0: 41 89 c4 mov %eax,%r12d + 663412c3: 74 5b je 66341320 <__DllMainCRTStartup+0x120> + 663412c5: 83 fb 01 cmp $0x1,%ebx + 663412c8: 75 b6 jne 66341280 <__DllMainCRTStartup+0x80> + 663412ca: e8 41 04 00 00 callq 66341710 <__main> + 663412cf: 49 89 e8 mov %rbp,%r8 + 663412d2: ba 01 00 00 00 mov $0x1,%edx + 663412d7: 48 89 f9 mov %rdi,%rcx + 663412da: e8 d1 16 00 00 callq 663429b0 + 663412df: 85 c0 test %eax,%eax + 663412e1: 41 89 c4 mov %eax,%r12d + 663412e4: 0f 85 75 ff ff ff jne 6634125f <__DllMainCRTStartup+0x5f> + 663412ea: 49 89 e8 mov %rbp,%r8 + 663412ed: 31 d2 xor %edx,%edx + 663412ef: 48 89 f9 mov %rdi,%rcx + 663412f2: e8 b9 16 00 00 callq 663429b0 + 663412f7: 49 89 e8 mov %rbp,%r8 + 663412fa: 31 d2 xor %edx,%edx + 663412fc: 48 89 f9 mov %rdi,%rcx + 663412ff: e8 9c 16 00 00 callq 663429a0 + 66341304: 49 89 e8 mov %rbp,%r8 + 66341307: 31 d2 xor %edx,%edx + 66341309: 48 89 f9 mov %rdi,%rcx + 6634130c: e8 ff fc ff ff callq 66341010 <_CRT_INIT> + 66341311: e9 49 ff ff ff jmpq 6634125f <__DllMainCRTStartup+0x5f> + 66341316: 66 2e 0f 1f 84 00 00 nopw %cs:0x0(%rax,%rax,1) + 6634131d: 00 00 00 + 66341320: 83 fb 01 cmp $0x1,%ebx + 66341323: 0f 85 33 ff ff ff jne 6634125c <__DllMainCRTStartup+0x5c> + 66341329: eb d9 jmp 66341304 <__DllMainCRTStartup+0x104> + 6634132b: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1) + +0000000066341330 : + 66341330: 48 83 ec 48 sub $0x48,%rsp + 66341334: 48 8b 05 35 2f 00 00 mov 0x2f35(%rip),%rax # 66344270 <.refptr.mingw_app_type> + 6634133b: c7 00 00 00 00 00 movl $0x0,(%rax) + 66341341: 83 fa 01 cmp $0x1,%edx + 66341344: 74 0a je 66341350 + 66341346: 48 83 c4 48 add $0x48,%rsp + 6634134a: e9 b1 fe ff ff jmpq 66341200 <__DllMainCRTStartup> + 6634134f: 90 nop + 66341350: 4c 89 44 24 38 mov %r8,0x38(%rsp) + 66341355: 89 54 24 34 mov %edx,0x34(%rsp) + 66341359: 48 89 4c 24 28 mov %rcx,0x28(%rsp) + 6634135e: e8 cd 03 00 00 callq 66341730 <__security_init_cookie> + 66341363: e8 b8 0c 00 00 callq 66342020 <__mingw_init_ehandler> + 66341368: 4c 8b 44 24 38 mov 0x38(%rsp),%r8 + 6634136d: 8b 54 24 34 mov 0x34(%rsp),%edx + 66341371: 48 8b 4c 24 28 mov 0x28(%rsp),%rcx + 66341376: 48 83 c4 48 add $0x48,%rsp + 6634137a: e9 81 fe ff ff jmpq 66341200 <__DllMainCRTStartup> + 6634137f: 90 nop + +0000000066341380 : + 66341380: 48 89 ca mov %rcx,%rdx + 66341383: 48 8d 0d 76 5c 00 00 lea 0x5c76(%rip),%rcx # 66347000 <__bss_start__> + 6634138a: e9 b1 16 00 00 jmpq 66342a40 <_register_onexit_function> + 6634138f: 90 nop + +0000000066341390 <__gcc_register_frame>: + 66341390: 48 8d 0d 09 00 00 00 lea 0x9(%rip),%rcx # 663413a0 <__gcc_deregister_frame> + 66341397: e9 e4 ff ff ff jmpq 66341380 + 6634139c: 0f 1f 40 00 nopl 0x0(%rax) + +00000000663413a0 <__gcc_deregister_frame>: + 663413a0: c3 retq + 663413a1: 90 nop + 663413a2: 90 nop + 663413a3: 90 nop + 663413a4: 90 nop + 663413a5: 90 nop + 663413a6: 90 nop + 663413a7: 90 nop + 663413a8: 90 nop + 663413a9: 90 nop + 663413aa: 90 nop + 663413ab: 90 nop + 663413ac: 90 nop + 663413ad: 90 nop + 663413ae: 90 nop + 663413af: 90 nop + +00000000663413b0 : + 663413b0: 48 8b 51 10 mov 0x10(%rcx),%rdx + 663413b4: 4c 8b 41 08 mov 0x8(%rcx),%r8 + 663413b8: 48 8b 42 08 mov 0x8(%rdx),%rax + 663413bc: 45 8b 48 08 mov 0x8(%r8),%r9d + 663413c0: 44 8b 10 mov (%rax),%r10d + 663413c3: 31 c0 xor %eax,%eax + 663413c5: 45 85 d2 test %r10d,%r10d + 663413c8: 0f 94 c0 sete %al + 663413cb: 44 39 c8 cmp %r9d,%eax + 663413ce: 74 67 je 66341437 + 663413d0: 4c 8b 51 18 mov 0x18(%rcx),%r10 + 663413d4: 41 89 c3 mov %eax,%r11d + 663413d7: 45 29 cb sub %r9d,%r11d + 663413da: 4d 8b 52 10 mov 0x10(%r10),%r10 + 663413de: 45 01 1a add %r11d,(%r10) + 663413e1: 41 89 40 08 mov %eax,0x8(%r8) + 663413e5: 45 31 c0 xor %r8d,%r8d + 663413e8: 45 8b 0a mov (%r10),%r9d + 663413eb: 48 8b 42 10 mov 0x10(%rdx),%rax + 663413ef: 45 85 c9 test %r9d,%r9d + 663413f2: 41 0f 9f c0 setg %r8b + 663413f6: 44 3b 00 cmp (%rax),%r8d + 663413f9: 74 3c je 66341437 + 663413fb: 48 8b 41 20 mov 0x20(%rcx),%rax + 663413ff: 48 8b 40 10 mov 0x10(%rax),%rax + 66341403: 8b 00 mov (%rax),%eax + 66341405: 85 c0 test %eax,%eax + 66341407: 75 2e jne 66341437 + 66341409: 48 8b 41 28 mov 0x28(%rcx),%rax + 6634140d: 48 8b 0d 1c 65 00 00 mov 0x651c(%rip),%rcx # 66347930 + 66341414: 4c 8b 05 05 65 00 00 mov 0x6505(%rip),%r8 # 66347920 + 6634141b: 48 8b 50 10 mov 0x10(%rax),%rdx + 6634141f: 48 8b 42 10 mov 0x10(%rdx),%rax + 66341423: c7 00 01 00 00 00 movl $0x1,(%rax) + 66341429: 48 63 01 movslq (%rcx),%rax + 6634142c: 44 8d 48 01 lea 0x1(%rax),%r9d + 66341430: 44 89 09 mov %r9d,(%rcx) + 66341433: 49 89 14 c0 mov %rdx,(%r8,%rax,8) + 66341437: c3 retq + 66341438: 0f 1f 84 00 00 00 00 nopl 0x0(%rax,%rax,1) + 6634143f: 00 + +0000000066341440 : + 66341440: 48 8b 51 10 mov 0x10(%rcx),%rdx + 66341444: 4c 8b 41 08 mov 0x8(%rcx),%r8 + 66341448: 48 8b 42 08 mov 0x8(%rdx),%rax + 6634144c: 45 8b 48 08 mov 0x8(%r8),%r9d + 66341450: 8b 00 mov (%rax),%eax + 66341452: 44 39 c8 cmp %r9d,%eax + 66341455: 74 67 je 663414be + 66341457: 4c 8b 51 18 mov 0x18(%rcx),%r10 + 6634145b: 41 89 c3 mov %eax,%r11d + 6634145e: 45 29 cb sub %r9d,%r11d + 66341461: 4d 8b 52 10 mov 0x10(%r10),%r10 + 66341465: 45 01 1a add %r11d,(%r10) + 66341468: 41 89 40 08 mov %eax,0x8(%r8) + 6634146c: 45 31 c0 xor %r8d,%r8d + 6634146f: 45 8b 0a mov (%r10),%r9d + 66341472: 48 8b 42 10 mov 0x10(%rdx),%rax + 66341476: 45 85 c9 test %r9d,%r9d + 66341479: 41 0f 9f c0 setg %r8b + 6634147d: 44 3b 00 cmp (%rax),%r8d + 66341480: 74 3c je 663414be + 66341482: 48 8b 41 20 mov 0x20(%rcx),%rax + 66341486: 48 8b 40 10 mov 0x10(%rax),%rax + 6634148a: 8b 00 mov (%rax),%eax + 6634148c: 85 c0 test %eax,%eax + 6634148e: 75 2e jne 663414be + 66341490: 48 8b 41 28 mov 0x28(%rcx),%rax + 66341494: 48 8b 0d 95 64 00 00 mov 0x6495(%rip),%rcx # 66347930 + 6634149b: 4c 8b 05 7e 64 00 00 mov 0x647e(%rip),%r8 # 66347920 + 663414a2: 48 8b 50 10 mov 0x10(%rax),%rdx + 663414a6: 48 8b 42 10 mov 0x10(%rdx),%rax + 663414aa: c7 00 01 00 00 00 movl $0x1,(%rax) + 663414b0: 48 63 01 movslq (%rcx),%rax + 663414b3: 44 8d 48 01 lea 0x1(%rax),%r9d + 663414b7: 44 89 09 mov %r9d,(%rcx) + 663414ba: 49 89 14 c0 mov %rdx,(%r8,%rax,8) + 663414be: c3 retq + 663414bf: 90 nop + +00000000663414c0 : + 663414c0: 48 8b 44 24 28 mov 0x28(%rsp),%rax + 663414c5: 48 89 0d 54 64 00 00 mov %rcx,0x6454(%rip) # 66347920 + 663414cc: 48 89 15 5d 64 00 00 mov %rdx,0x645d(%rip) # 66347930 + 663414d3: 4c 89 05 36 64 00 00 mov %r8,0x6436(%rip) # 66347910 + 663414da: 4c 89 0d 47 64 00 00 mov %r9,0x6447(%rip) # 66347928 + 663414e1: 48 89 05 30 64 00 00 mov %rax,0x6430(%rip) # 66347918 + 663414e8: c3 retq + 663414e9: 0f 1f 80 00 00 00 00 nopl 0x0(%rax) + +00000000663414f0 : + 663414f0: 41 55 push %r13 + 663414f2: 41 54 push %r12 + 663414f4: 55 push %rbp + 663414f5: 57 push %rdi + 663414f6: 56 push %rsi + 663414f7: 53 push %rbx + 663414f8: 48 8b 35 31 64 00 00 mov 0x6431(%rip),%rsi # 66347930 + 663414ff: 8b 16 mov (%rsi),%edx + 66341501: 85 d2 test %edx,%edx + 66341503: 0f 8e a6 00 00 00 jle 663415af + 66341509: 48 8b 1d 10 64 00 00 mov 0x6410(%rip),%rbx # 66347920 + 66341510: 45 31 c0 xor %r8d,%r8d + 66341513: 48 8b 2d fe 63 00 00 mov 0x63fe(%rip),%rbp # 66347918 + 6634151a: 48 8b 3d ef 63 00 00 mov 0x63ef(%rip),%rdi # 66347910 + 66341521: 4c 8b 1d 00 64 00 00 mov 0x6400(%rip),%r11 # 66347928 + 66341528: 0f 1f 84 00 00 00 00 nopl 0x0(%rax,%rax,1) + 6634152f: 00 + 66341530: 4a 8b 14 c3 mov (%rbx,%r8,8),%rdx + 66341534: 31 c9 xor %ecx,%ecx + 66341536: 48 8b 42 08 mov 0x8(%rdx),%rax + 6634153a: 8b 00 mov (%rax),%eax + 6634153c: 85 c0 test %eax,%eax + 6634153e: 48 8b 02 mov (%rdx),%rax + 66341541: 0f 9f c1 setg %cl + 66341544: 3b 08 cmp (%rax),%ecx + 66341546: 74 4c je 66341594 + 66341548: 89 08 mov %ecx,(%rax) + 6634154a: 4c 8b 62 20 mov 0x20(%rdx),%r12 + 6634154e: 8b 4d 00 mov 0x0(%rbp),%ecx + 66341551: 48 8b 42 18 mov 0x18(%rdx),%rax + 66341555: 89 08 mov %ecx,(%rax) + 66341557: 41 8b 0c 24 mov (%r12),%ecx + 6634155b: 85 c9 test %ecx,%ecx + 6634155d: 7e 35 jle 66341594 + 6634155f: 4c 8b 6a 28 mov 0x28(%rdx),%r13 + 66341563: 31 c0 xor %eax,%eax + 66341565: 4d 8b 4c c5 00 mov 0x0(%r13,%rax,8),%r9 + 6634156a: 4d 8b 11 mov (%r9),%r10 + 6634156d: 41 83 3a 00 cmpl $0x0,(%r10) + 66341571: 75 4d jne 663415c0 + 66341573: 41 c7 02 01 00 00 00 movl $0x1,(%r10) + 6634157a: 49 63 0b movslq (%r11),%rcx + 6634157d: 48 83 c0 01 add $0x1,%rax + 66341581: 44 8d 51 01 lea 0x1(%rcx),%r10d + 66341585: 45 89 13 mov %r10d,(%r11) + 66341588: 4c 89 0c cf mov %r9,(%rdi,%rcx,8) + 6634158c: 41 8b 0c 24 mov (%r12),%ecx + 66341590: 39 c1 cmp %eax,%ecx + 66341592: 7f d1 jg 66341565 + 66341594: 48 8b 42 10 mov 0x10(%rdx),%rax + 66341598: c7 00 00 00 00 00 movl $0x0,(%rax) + 6634159e: 4a c7 04 c3 00 00 00 movq $0x0,(%rbx,%r8,8) + 663415a5: 00 + 663415a6: 49 83 c0 01 add $0x1,%r8 + 663415aa: 44 39 06 cmp %r8d,(%rsi) + 663415ad: 7f 81 jg 66341530 + 663415af: c7 06 00 00 00 00 movl $0x0,(%rsi) + 663415b5: 5b pop %rbx + 663415b6: 5e pop %rsi + 663415b7: 5f pop %rdi + 663415b8: 5d pop %rbp + 663415b9: 41 5c pop %r12 + 663415bb: 41 5d pop %r13 + 663415bd: c3 retq + 663415be: 66 90 xchg %ax,%ax + 663415c0: 48 83 c0 01 add $0x1,%rax + 663415c4: 39 c1 cmp %eax,%ecx + 663415c6: 7f 9d jg 66341565 + 663415c8: eb ca jmp 66341594 + 663415ca: 66 0f 1f 44 00 00 nopw 0x0(%rax,%rax,1) + +00000000663415d0 : + 663415d0: 55 push %rbp + 663415d1: 57 push %rdi + 663415d2: 56 push %rsi + 663415d3: 53 push %rbx + 663415d4: 48 83 ec 28 sub $0x28,%rsp + 663415d8: 4c 8b 1d 49 63 00 00 mov 0x6349(%rip),%r11 # 66347928 + 663415df: 41 8b 03 mov (%r11),%eax + 663415e2: 85 c0 test %eax,%eax + 663415e4: 7e 6c jle 66341652 + 663415e6: 41 89 c1 mov %eax,%r9d + 663415e9: 4d 89 da mov %r11,%r10 + 663415ec: 31 db xor %ebx,%ebx + 663415ee: 48 8d 35 1b 63 00 00 lea 0x631b(%rip),%rsi # 66347910 + 663415f5: 31 ed xor %ebp,%ebp + 663415f7: 48 8d 3d 02 1a 00 00 lea 0x1a02(%rip),%rdi # 66343000 <__data_start__> + 663415fe: eb 11 jmp 66341611 + 66341600: 83 c3 01 add $0x1,%ebx + 66341603: 41 39 d9 cmp %ebx,%r9d + 66341606: 7e 4a jle 66341652 + 66341608: 48 63 eb movslq %ebx,%rbp + 6634160b: 44 89 c8 mov %r9d,%eax + 6634160e: 4d 89 d3 mov %r10,%r11 + 66341611: 4c 8b 06 mov (%rsi),%r8 + 66341614: 49 8d 14 e8 lea (%r8,%rbp,8),%rdx + 66341618: 48 8b 0a mov (%rdx),%rcx + 6634161b: 83 79 34 00 cmpl $0x0,0x34(%rcx) + 6634161f: 74 df je 66341600 + 66341621: 4c 63 c8 movslq %eax,%r9 + 66341624: 83 e8 01 sub $0x1,%eax + 66341627: 4f 8d 44 c8 f8 lea -0x8(%r8,%r9,8),%r8 + 6634162c: 4d 8b 08 mov (%r8),%r9 + 6634162f: 4c 89 0a mov %r9,(%rdx) + 66341632: 49 c7 00 00 00 00 00 movq $0x0,(%r8) + 66341639: 41 89 03 mov %eax,(%r11) + 6634163c: 48 63 41 34 movslq 0x34(%rcx),%rax + 66341640: ff 14 c7 callq *(%rdi,%rax,8) + 66341643: 4c 8b 15 de 62 00 00 mov 0x62de(%rip),%r10 # 66347928 + 6634164a: 45 8b 0a mov (%r10),%r9d + 6634164d: 44 39 cb cmp %r9d,%ebx + 66341650: 7c b9 jl 6634160b + 66341652: 48 83 c4 28 add $0x28,%rsp + 66341656: 5b pop %rbx + 66341657: 5e pop %rsi + 66341658: 5f pop %rdi + 66341659: 5d pop %rbp + 6634165a: c3 retq + 6634165b: 90 nop + 6634165c: 90 nop + 6634165d: 90 nop + 6634165e: 90 nop + 6634165f: 90 nop + +0000000066341660 <__do_global_dtors>: + 66341660: 48 83 ec 28 sub $0x28,%rsp + 66341664: 48 8b 05 b5 19 00 00 mov 0x19b5(%rip),%rax # 66343020 + 6634166b: 48 8b 00 mov (%rax),%rax + 6634166e: 48 85 c0 test %rax,%rax + 66341671: 74 1d je 66341690 <__do_global_dtors+0x30> + 66341673: ff d0 callq *%rax + 66341675: 48 8b 05 a4 19 00 00 mov 0x19a4(%rip),%rax # 66343020 + 6634167c: 48 8d 50 08 lea 0x8(%rax),%rdx + 66341680: 48 8b 40 08 mov 0x8(%rax),%rax + 66341684: 48 89 15 95 19 00 00 mov %rdx,0x1995(%rip) # 66343020 + 6634168b: 48 85 c0 test %rax,%rax + 6634168e: 75 e3 jne 66341673 <__do_global_dtors+0x13> + 66341690: 48 83 c4 28 add $0x28,%rsp + 66341694: c3 retq + 66341695: 90 nop + 66341696: 66 2e 0f 1f 84 00 00 nopw %cs:0x0(%rax,%rax,1) + 6634169d: 00 00 00 + +00000000663416a0 <__do_global_ctors>: + 663416a0: 56 push %rsi + 663416a1: 53 push %rbx + 663416a2: 48 83 ec 28 sub $0x28,%rsp + 663416a6: 48 8b 0d 03 2b 00 00 mov 0x2b03(%rip),%rcx # 663441b0 <.refptr.__CTOR_LIST__> + 663416ad: 48 8b 11 mov (%rcx),%rdx + 663416b0: 83 fa ff cmp $0xffffffff,%edx + 663416b3: 89 d0 mov %edx,%eax + 663416b5: 74 39 je 663416f0 <__do_global_ctors+0x50> + 663416b7: 85 c0 test %eax,%eax + 663416b9: 74 20 je 663416db <__do_global_ctors+0x3b> + 663416bb: 89 c2 mov %eax,%edx + 663416bd: 83 e8 01 sub $0x1,%eax + 663416c0: 48 8d 1c d1 lea (%rcx,%rdx,8),%rbx + 663416c4: 48 29 c2 sub %rax,%rdx + 663416c7: 48 8d 74 d1 f8 lea -0x8(%rcx,%rdx,8),%rsi + 663416cc: 0f 1f 40 00 nopl 0x0(%rax) + 663416d0: ff 13 callq *(%rbx) + 663416d2: 48 83 eb 08 sub $0x8,%rbx + 663416d6: 48 39 f3 cmp %rsi,%rbx + 663416d9: 75 f5 jne 663416d0 <__do_global_ctors+0x30> + 663416db: 48 8d 0d 7e ff ff ff lea -0x82(%rip),%rcx # 66341660 <__do_global_dtors> + 663416e2: 48 83 c4 28 add $0x28,%rsp + 663416e6: 5b pop %rbx + 663416e7: 5e pop %rsi + 663416e8: e9 93 fc ff ff jmpq 66341380 + 663416ed: 0f 1f 00 nopl (%rax) + 663416f0: 31 c0 xor %eax,%eax + 663416f2: eb 02 jmp 663416f6 <__do_global_ctors+0x56> + 663416f4: 89 d0 mov %edx,%eax + 663416f6: 44 8d 40 01 lea 0x1(%rax),%r8d + 663416fa: 4a 83 3c c1 00 cmpq $0x0,(%rcx,%r8,8) + 663416ff: 4c 89 c2 mov %r8,%rdx + 66341702: 75 f0 jne 663416f4 <__do_global_ctors+0x54> + 66341704: eb b1 jmp 663416b7 <__do_global_ctors+0x17> + 66341706: 66 2e 0f 1f 84 00 00 nopw %cs:0x0(%rax,%rax,1) + 6634170d: 00 00 00 + +0000000066341710 <__main>: + 66341710: 8b 05 0a 59 00 00 mov 0x590a(%rip),%eax # 66347020 + 66341716: 85 c0 test %eax,%eax + 66341718: 74 06 je 66341720 <__main+0x10> + 6634171a: c3 retq + 6634171b: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1) + 66341720: c7 05 f6 58 00 00 01 movl $0x1,0x58f6(%rip) # 66347020 + 66341727: 00 00 00 + 6634172a: e9 71 ff ff ff jmpq 663416a0 <__do_global_ctors> + 6634172f: 90 nop + +0000000066341730 <__security_init_cookie>: + 66341730: 41 54 push %r12 + 66341732: 55 push %rbp + 66341733: 57 push %rdi + 66341734: 56 push %rsi + 66341735: 53 push %rbx + 66341736: 48 83 ec 30 sub $0x30,%rsp + 6634173a: 48 8b 1d 3f 19 00 00 mov 0x193f(%rip),%rbx # 66343080 <__security_cookie> + 66341741: 48 b8 32 a2 df 2d 99 movabs $0x2b992ddfa232,%rax + 66341748: 2b 00 00 + 6634174b: 48 39 c3 cmp %rax,%rbx + 6634174e: 48 c7 44 24 20 00 00 movq $0x0,0x20(%rsp) + 66341755: 00 00 + 66341757: 74 17 je 66341770 <__security_init_cookie+0x40> + 66341759: 48 f7 d3 not %rbx + 6634175c: 48 89 1d 2d 19 00 00 mov %rbx,0x192d(%rip) # 66343090 <__security_cookie_complement> + 66341763: 48 83 c4 30 add $0x30,%rsp + 66341767: 5b pop %rbx + 66341768: 5e pop %rsi + 66341769: 5f pop %rdi + 6634176a: 5d pop %rbp + 6634176b: 41 5c pop %r12 + 6634176d: c3 retq + 6634176e: 66 90 xchg %ax,%ax + 66341770: 48 8d 4c 24 20 lea 0x20(%rsp),%rcx + 66341775: ff 15 21 7a 00 00 callq *0x7a21(%rip) # 6634919c <__imp_GetSystemTimeAsFileTime> + 6634177b: 48 8b 74 24 20 mov 0x20(%rsp),%rsi + 66341780: ff 15 fe 79 00 00 callq *0x79fe(%rip) # 66349184 <__imp_GetCurrentProcessId> + 66341786: 41 89 c4 mov %eax,%r12d + 66341789: ff 15 fd 79 00 00 callq *0x79fd(%rip) # 6634918c <__imp_GetCurrentThreadId> + 6634178f: 89 c5 mov %eax,%ebp + 66341791: ff 15 0d 7a 00 00 callq *0x7a0d(%rip) # 663491a4 <__imp_GetTickCount> + 66341797: 48 8d 4c 24 28 lea 0x28(%rsp),%rcx + 6634179c: 89 c7 mov %eax,%edi + 6634179e: ff 15 18 7a 00 00 callq *0x7a18(%rip) # 663491bc <__imp_QueryPerformanceCounter> + 663417a4: 48 33 74 24 28 xor 0x28(%rsp),%rsi + 663417a9: 44 89 e0 mov %r12d,%eax + 663417ac: 48 ba ff ff ff ff ff movabs $0xffffffffffff,%rdx + 663417b3: ff 00 00 + 663417b6: 48 31 f0 xor %rsi,%rax + 663417b9: 89 ee mov %ebp,%esi + 663417bb: 48 31 c6 xor %rax,%rsi + 663417be: 89 f8 mov %edi,%eax + 663417c0: 48 31 f0 xor %rsi,%rax + 663417c3: 48 21 d0 and %rdx,%rax + 663417c6: 48 39 d8 cmp %rbx,%rax + 663417c9: 74 25 je 663417f0 <__security_init_cookie+0xc0> + 663417cb: 48 89 c2 mov %rax,%rdx + 663417ce: 48 f7 d2 not %rdx + 663417d1: 48 89 05 a8 18 00 00 mov %rax,0x18a8(%rip) # 66343080 <__security_cookie> + 663417d8: 48 89 15 b1 18 00 00 mov %rdx,0x18b1(%rip) # 66343090 <__security_cookie_complement> + 663417df: 48 83 c4 30 add $0x30,%rsp + 663417e3: 5b pop %rbx + 663417e4: 5e pop %rsi + 663417e5: 5f pop %rdi + 663417e6: 5d pop %rbp + 663417e7: 41 5c pop %r12 + 663417e9: c3 retq + 663417ea: 66 0f 1f 44 00 00 nopw 0x0(%rax,%rax,1) + 663417f0: 48 ba cc 5d 20 d2 66 movabs $0xffffd466d2205dcc,%rdx + 663417f7: d4 ff ff + 663417fa: 48 b8 33 a2 df 2d 99 movabs $0x2b992ddfa233,%rax + 66341801: 2b 00 00 + 66341804: eb cb jmp 663417d1 <__security_init_cookie+0xa1> + 66341806: 66 2e 0f 1f 84 00 00 nopw %cs:0x0(%rax,%rax,1) + 6634180d: 00 00 00 + +0000000066341810 <__report_gsfailure>: + 66341810: 55 push %rbp + 66341811: 56 push %rsi + 66341812: 53 push %rbx + 66341813: 48 89 e5 mov %rsp,%rbp + 66341816: 48 83 ec 70 sub $0x70,%rsp + 6634181a: 48 89 ce mov %rcx,%rsi + 6634181d: 48 8d 0d 1c 58 00 00 lea 0x581c(%rip),%rcx # 66347040 + 66341824: ff 15 a2 79 00 00 callq *0x79a2(%rip) # 663491cc <__imp_RtlCaptureContext> + 6634182a: 48 8b 1d 07 59 00 00 mov 0x5907(%rip),%rbx # 66347138 + 66341831: 48 8d 55 d8 lea -0x28(%rbp),%rdx + 66341835: 45 31 c0 xor %r8d,%r8d + 66341838: 48 89 d9 mov %rbx,%rcx + 6634183b: ff 15 93 79 00 00 callq *0x7993(%rip) # 663491d4 <__imp_RtlLookupFunctionEntry> + 66341841: 48 85 c0 test %rax,%rax + 66341844: 0f 84 a3 00 00 00 je 663418ed <__report_gsfailure+0xdd> + 6634184a: 48 8d 55 e0 lea -0x20(%rbp),%rdx + 6634184e: 49 89 c1 mov %rax,%r9 + 66341851: 49 89 d8 mov %rbx,%r8 + 66341854: 48 c7 44 24 38 00 00 movq $0x0,0x38(%rsp) + 6634185b: 00 00 + 6634185d: 48 8d 0d dc 57 00 00 lea 0x57dc(%rip),%rcx # 66347040 + 66341864: 48 89 54 24 30 mov %rdx,0x30(%rsp) + 66341869: 48 8d 55 e8 lea -0x18(%rbp),%rdx + 6634186d: 48 89 4c 24 20 mov %rcx,0x20(%rsp) + 66341872: 31 c9 xor %ecx,%ecx + 66341874: 48 89 54 24 28 mov %rdx,0x28(%rsp) + 66341879: 48 8b 55 d8 mov -0x28(%rbp),%rdx + 6634187d: ff 15 59 79 00 00 callq *0x7959(%rip) # 663491dc <__imp_RtlVirtualUnwind> + 66341883: 48 8b 05 ae 58 00 00 mov 0x58ae(%rip),%rax # 66347138 + 6634188a: 31 c9 xor %ecx,%ecx + 6634188c: 48 89 35 2d 58 00 00 mov %rsi,0x582d(%rip) # 663470c0 + 66341893: 48 89 05 96 5c 00 00 mov %rax,0x5c96(%rip) # 66347530 + 6634189a: 48 b8 09 04 00 c0 01 movabs $0x1c0000409,%rax + 663418a1: 00 00 00 + 663418a4: 48 89 05 75 5c 00 00 mov %rax,0x5c75(%rip) # 66347520 + 663418ab: 48 8b 05 ce 17 00 00 mov 0x17ce(%rip),%rax # 66343080 <__security_cookie> + 663418b2: 48 89 45 f0 mov %rax,-0x10(%rbp) + 663418b6: 48 8b 05 d3 17 00 00 mov 0x17d3(%rip),%rax # 66343090 <__security_cookie_complement> + 663418bd: 48 89 45 f8 mov %rax,-0x8(%rbp) + 663418c1: ff 15 1d 79 00 00 callq *0x791d(%rip) # 663491e4 <__imp_SetUnhandledExceptionFilter> + 663418c7: 48 8d 0d 32 27 00 00 lea 0x2732(%rip),%rcx # 66344000 + 663418ce: ff 15 30 79 00 00 callq *0x7930(%rip) # 66349204 <__imp_UnhandledExceptionFilter> + 663418d4: ff 15 a2 78 00 00 callq *0x78a2(%rip) # 6634917c <__imp_GetCurrentProcess> + 663418da: ba 09 04 00 c0 mov $0xc0000409,%edx + 663418df: 48 89 c1 mov %rax,%rcx + 663418e2: ff 15 0c 79 00 00 callq *0x790c(%rip) # 663491f4 <__imp_TerminateProcess> + 663418e8: e8 0b 11 00 00 callq 663429f8 + 663418ed: 48 8b 45 18 mov 0x18(%rbp),%rax + 663418f1: 48 89 05 40 58 00 00 mov %rax,0x5840(%rip) # 66347138 + 663418f8: 48 8d 45 08 lea 0x8(%rbp),%rax + 663418fc: 48 89 05 d5 57 00 00 mov %rax,0x57d5(%rip) # 663470d8 + 66341903: e9 7b ff ff ff jmpq 66341883 <__report_gsfailure+0x73> + 66341908: 90 nop + 66341909: 90 nop + 6634190a: 90 nop + 6634190b: 90 nop + 6634190c: 90 nop + 6634190d: 90 nop + 6634190e: 90 nop + 6634190f: 90 nop + +0000000066341910 <__dyn_tls_dtor>: + 66341910: 48 83 ec 28 sub $0x28,%rsp + 66341914: 83 fa 03 cmp $0x3,%edx + 66341917: 74 17 je 66341930 <__dyn_tls_dtor+0x20> + 66341919: 85 d2 test %edx,%edx + 6634191b: 74 13 je 66341930 <__dyn_tls_dtor+0x20> + 6634191d: b8 01 00 00 00 mov $0x1,%eax + 66341922: 48 83 c4 28 add $0x28,%rsp + 66341926: c3 retq + 66341927: 66 0f 1f 84 00 00 00 nopw 0x0(%rax,%rax,1) + 6634192e: 00 00 + 66341930: e8 5b 0b 00 00 callq 66342490 <__mingw_TLScallback> + 66341935: b8 01 00 00 00 mov $0x1,%eax + 6634193a: 48 83 c4 28 add $0x28,%rsp + 6634193e: c3 retq + 6634193f: 90 nop + +0000000066341940 <__dyn_tls_init>: + 66341940: 56 push %rsi + 66341941: 53 push %rbx + 66341942: 48 83 ec 28 sub $0x28,%rsp + 66341946: 48 8b 05 53 28 00 00 mov 0x2853(%rip),%rax # 663441a0 <.refptr._CRT_MT> + 6634194d: 83 38 02 cmpl $0x2,(%rax) + 66341950: 74 06 je 66341958 <__dyn_tls_init+0x18> + 66341952: c7 00 02 00 00 00 movl $0x2,(%rax) + 66341958: 83 fa 02 cmp $0x2,%edx + 6634195b: 74 13 je 66341970 <__dyn_tls_init+0x30> + 6634195d: 83 fa 01 cmp $0x1,%edx + 66341960: 74 40 je 663419a2 <__dyn_tls_init+0x62> + 66341962: b8 01 00 00 00 mov $0x1,%eax + 66341967: 48 83 c4 28 add $0x28,%rsp + 6634196b: 5b pop %rbx + 6634196c: 5e pop %rsi + 6634196d: c3 retq + 6634196e: 66 90 xchg %ax,%ax + 66341970: 48 8d 1d d9 86 00 00 lea 0x86d9(%rip),%rbx # 6634a050 <__xd_z> + 66341977: 48 8d 35 d2 86 00 00 lea 0x86d2(%rip),%rsi # 6634a050 <__xd_z> + 6634197e: 48 39 de cmp %rbx,%rsi + 66341981: 74 df je 66341962 <__dyn_tls_init+0x22> + 66341983: 48 8b 03 mov (%rbx),%rax + 66341986: 48 85 c0 test %rax,%rax + 66341989: 74 02 je 6634198d <__dyn_tls_init+0x4d> + 6634198b: ff d0 callq *%rax + 6634198d: 48 83 c3 08 add $0x8,%rbx + 66341991: 48 39 de cmp %rbx,%rsi + 66341994: 75 ed jne 66341983 <__dyn_tls_init+0x43> + 66341996: b8 01 00 00 00 mov $0x1,%eax + 6634199b: 48 83 c4 28 add $0x28,%rsp + 6634199f: 5b pop %rbx + 663419a0: 5e pop %rsi + 663419a1: c3 retq + 663419a2: e8 e9 0a 00 00 callq 66342490 <__mingw_TLScallback> + 663419a7: b8 01 00 00 00 mov $0x1,%eax + 663419ac: 48 83 c4 28 add $0x28,%rsp + 663419b0: 5b pop %rbx + 663419b1: 5e pop %rsi + 663419b2: c3 retq + 663419b3: 0f 1f 00 nopl (%rax) + 663419b6: 66 2e 0f 1f 84 00 00 nopw %cs:0x0(%rax,%rax,1) + 663419bd: 00 00 00 + +00000000663419c0 <__tlregdtor>: + 663419c0: 31 c0 xor %eax,%eax + 663419c2: c3 retq + 663419c3: 90 nop + 663419c4: 90 nop + 663419c5: 90 nop + 663419c6: 90 nop + 663419c7: 90 nop + 663419c8: 90 nop + 663419c9: 90 nop + 663419ca: 90 nop + 663419cb: 90 nop + 663419cc: 90 nop + 663419cd: 90 nop + 663419ce: 90 nop + 663419cf: 90 nop + +00000000663419d0 <_decode_pointer>: + 663419d0: 48 89 c8 mov %rcx,%rax + 663419d3: c3 retq + 663419d4: 66 90 xchg %ax,%ax + 663419d6: 66 2e 0f 1f 84 00 00 nopw %cs:0x0(%rax,%rax,1) + 663419dd: 00 00 00 + +00000000663419e0 <_encode_pointer>: + 663419e0: 48 89 c8 mov %rcx,%rax + 663419e3: c3 retq + 663419e4: 90 nop + 663419e5: 90 nop + 663419e6: 90 nop + 663419e7: 90 nop + 663419e8: 90 nop + 663419e9: 90 nop + 663419ea: 90 nop + 663419eb: 90 nop + 663419ec: 90 nop + 663419ed: 90 nop + 663419ee: 90 nop + 663419ef: 90 nop + +00000000663419f0 <__write_memory.part.0>: + 663419f0: 41 54 push %r12 + 663419f2: 55 push %rbp + 663419f3: 57 push %rdi + 663419f4: 56 push %rsi + 663419f5: 53 push %rbx + 663419f6: 48 83 ec 50 sub $0x50,%rsp + 663419fa: 48 63 35 e3 5b 00 00 movslq 0x5be3(%rip),%rsi # 663475e4 + 66341a01: 85 f6 test %esi,%esi + 66341a03: 48 89 cb mov %rcx,%rbx + 66341a06: 48 89 d5 mov %rdx,%rbp + 66341a09: 4c 89 c7 mov %r8,%rdi + 66341a0c: 0f 8e 66 01 00 00 jle 66341b78 <__write_memory.part.0+0x188> + 66341a12: 48 8b 05 cf 5b 00 00 mov 0x5bcf(%rip),%rax # 663475e8 + 66341a19: 31 c9 xor %ecx,%ecx + 66341a1b: 48 83 c0 18 add $0x18,%rax + 66341a1f: 90 nop + 66341a20: 48 8b 10 mov (%rax),%rdx + 66341a23: 48 39 d3 cmp %rdx,%rbx + 66341a26: 72 14 jb 66341a3c <__write_memory.part.0+0x4c> + 66341a28: 4c 8b 40 08 mov 0x8(%rax),%r8 + 66341a2c: 45 8b 40 08 mov 0x8(%r8),%r8d + 66341a30: 4c 01 c2 add %r8,%rdx + 66341a33: 48 39 d3 cmp %rdx,%rbx + 66341a36: 0f 82 89 00 00 00 jb 66341ac5 <__write_memory.part.0+0xd5> + 66341a3c: 83 c1 01 add $0x1,%ecx + 66341a3f: 48 83 c0 28 add $0x28,%rax + 66341a43: 39 f1 cmp %esi,%ecx + 66341a45: 75 d9 jne 66341a20 <__write_memory.part.0+0x30> + 66341a47: 48 89 d9 mov %rbx,%rcx + 66341a4a: e8 41 0c 00 00 callq 66342690 <__mingw_GetSectionForAddress> + 66341a4f: 48 85 c0 test %rax,%rax + 66341a52: 49 89 c4 mov %rax,%r12 + 66341a55: 0f 84 52 01 00 00 je 66341bad <__write_memory.part.0+0x1bd> + 66341a5b: 48 8b 05 86 5b 00 00 mov 0x5b86(%rip),%rax # 663475e8 + 66341a62: 48 8d 34 b6 lea (%rsi,%rsi,4),%rsi + 66341a66: 48 c1 e6 03 shl $0x3,%rsi + 66341a6a: 48 01 f0 add %rsi,%rax + 66341a6d: 4c 89 60 20 mov %r12,0x20(%rax) + 66341a71: c7 00 00 00 00 00 movl $0x0,(%rax) + 66341a77: e8 44 0d 00 00 callq 663427c0 <_GetPEImageBase> + 66341a7c: 41 8b 4c 24 0c mov 0xc(%r12),%ecx + 66341a81: 48 8d 54 24 20 lea 0x20(%rsp),%rdx + 66341a86: 41 b8 30 00 00 00 mov $0x30,%r8d + 66341a8c: 48 01 c1 add %rax,%rcx + 66341a8f: 48 8b 05 52 5b 00 00 mov 0x5b52(%rip),%rax # 663475e8 + 66341a96: 48 89 4c 30 18 mov %rcx,0x18(%rax,%rsi,1) + 66341a9b: ff 15 73 77 00 00 callq *0x7773(%rip) # 66349214 <__imp_VirtualQuery> + 66341aa1: 48 85 c0 test %rax,%rax + 66341aa4: 0f 84 e6 00 00 00 je 66341b90 <__write_memory.part.0+0x1a0> + 66341aaa: 8b 44 24 44 mov 0x44(%rsp),%eax + 66341aae: 8d 50 fc lea -0x4(%rax),%edx + 66341ab1: 83 e2 fb and $0xfffffffb,%edx + 66341ab4: 74 08 je 66341abe <__write_memory.part.0+0xce> + 66341ab6: 83 e8 40 sub $0x40,%eax + 66341ab9: 83 e0 bf and $0xffffffbf,%eax + 66341abc: 75 62 jne 66341b20 <__write_memory.part.0+0x130> + 66341abe: 83 05 1f 5b 00 00 01 addl $0x1,0x5b1f(%rip) # 663475e4 + 66341ac5: 83 ff 08 cmp $0x8,%edi + 66341ac8: 73 29 jae 66341af3 <__write_memory.part.0+0x103> + 66341aca: 40 f6 c7 04 test $0x4,%dil + 66341ace: 0f 85 90 00 00 00 jne 66341b64 <__write_memory.part.0+0x174> + 66341ad4: 85 ff test %edi,%edi + 66341ad6: 74 10 je 66341ae8 <__write_memory.part.0+0xf8> + 66341ad8: 0f b6 45 00 movzbl 0x0(%rbp),%eax + 66341adc: 40 f6 c7 02 test $0x2,%dil + 66341ae0: 88 03 mov %al,(%rbx) + 66341ae2: 0f 85 97 00 00 00 jne 66341b7f <__write_memory.part.0+0x18f> + 66341ae8: 48 83 c4 50 add $0x50,%rsp + 66341aec: 5b pop %rbx + 66341aed: 5e pop %rsi + 66341aee: 5f pop %rdi + 66341aef: 5d pop %rbp + 66341af0: 41 5c pop %r12 + 66341af2: c3 retq + 66341af3: 89 f8 mov %edi,%eax + 66341af5: 83 ef 01 sub $0x1,%edi + 66341af8: 48 8b 54 05 f8 mov -0x8(%rbp,%rax,1),%rdx + 66341afd: 83 ff 08 cmp $0x8,%edi + 66341b00: 48 89 54 03 f8 mov %rdx,-0x8(%rbx,%rax,1) + 66341b05: 72 e1 jb 66341ae8 <__write_memory.part.0+0xf8> + 66341b07: 83 e7 f8 and $0xfffffff8,%edi + 66341b0a: 31 c0 xor %eax,%eax + 66341b0c: 89 c2 mov %eax,%edx + 66341b0e: 83 c0 08 add $0x8,%eax + 66341b11: 48 8b 4c 15 00 mov 0x0(%rbp,%rdx,1),%rcx + 66341b16: 39 f8 cmp %edi,%eax + 66341b18: 48 89 0c 13 mov %rcx,(%rbx,%rdx,1) + 66341b1c: 72 ee jb 66341b0c <__write_memory.part.0+0x11c> + 66341b1e: eb c8 jmp 66341ae8 <__write_memory.part.0+0xf8> + 66341b20: 48 03 35 c1 5a 00 00 add 0x5ac1(%rip),%rsi # 663475e8 + 66341b27: 41 b8 40 00 00 00 mov $0x40,%r8d + 66341b2d: 48 8b 4c 24 20 mov 0x20(%rsp),%rcx + 66341b32: 48 8b 54 24 38 mov 0x38(%rsp),%rdx + 66341b37: 49 89 f1 mov %rsi,%r9 + 66341b3a: 48 89 4e 08 mov %rcx,0x8(%rsi) + 66341b3e: 48 89 56 10 mov %rdx,0x10(%rsi) + 66341b42: ff 15 c4 76 00 00 callq *0x76c4(%rip) # 6634920c <__imp_VirtualProtect> + 66341b48: 85 c0 test %eax,%eax + 66341b4a: 0f 85 6e ff ff ff jne 66341abe <__write_memory.part.0+0xce> + 66341b50: ff 15 3e 76 00 00 callq *0x763e(%rip) # 66349194 <__imp_GetLastError> + 66341b56: 48 8d 0d 9b 25 00 00 lea 0x259b(%rip),%rcx # 663440f8 <.rdata+0x78> + 66341b5d: 89 c2 mov %eax,%edx + 66341b5f: e8 0c 11 00 00 callq 66342c70 <__report_error> + 66341b64: 8b 45 00 mov 0x0(%rbp),%eax + 66341b67: 89 ff mov %edi,%edi + 66341b69: 89 03 mov %eax,(%rbx) + 66341b6b: 8b 44 3d fc mov -0x4(%rbp,%rdi,1),%eax + 66341b6f: 89 44 3b fc mov %eax,-0x4(%rbx,%rdi,1) + 66341b73: e9 70 ff ff ff jmpq 66341ae8 <__write_memory.part.0+0xf8> + 66341b78: 31 f6 xor %esi,%esi + 66341b7a: e9 c8 fe ff ff jmpq 66341a47 <__write_memory.part.0+0x57> + 66341b7f: 89 ff mov %edi,%edi + 66341b81: 0f b7 44 3d fe movzwl -0x2(%rbp,%rdi,1),%eax + 66341b86: 66 89 44 3b fe mov %ax,-0x2(%rbx,%rdi,1) + 66341b8b: e9 58 ff ff ff jmpq 66341ae8 <__write_memory.part.0+0xf8> + 66341b90: 48 8b 05 51 5a 00 00 mov 0x5a51(%rip),%rax # 663475e8 + 66341b97: 48 8d 0d 22 25 00 00 lea 0x2522(%rip),%rcx # 663440c0 <.rdata+0x40> + 66341b9e: 41 8b 54 24 08 mov 0x8(%r12),%edx + 66341ba3: 4c 8b 44 30 18 mov 0x18(%rax,%rsi,1),%r8 + 66341ba8: e8 c3 10 00 00 callq 66342c70 <__report_error> + 66341bad: 48 8d 0d ec 24 00 00 lea 0x24ec(%rip),%rcx # 663440a0 <.rdata+0x20> + 66341bb4: 48 89 da mov %rbx,%rdx + 66341bb7: e8 b4 10 00 00 callq 66342c70 <__report_error> + 66341bbc: 90 nop + 66341bbd: 0f 1f 00 nopl (%rax) + +0000000066341bc0 <_pei386_runtime_relocator>: + 66341bc0: 55 push %rbp + 66341bc1: 41 57 push %r15 + 66341bc3: 41 56 push %r14 + 66341bc5: 41 55 push %r13 + 66341bc7: 41 54 push %r12 + 66341bc9: 57 push %rdi + 66341bca: 56 push %rsi + 66341bcb: 53 push %rbx + 66341bcc: 48 83 ec 38 sub $0x38,%rsp + 66341bd0: 48 8d ac 24 80 00 00 lea 0x80(%rsp),%rbp + 66341bd7: 00 + 66341bd8: 8b 1d 02 5a 00 00 mov 0x5a02(%rip),%ebx # 663475e0 + 66341bde: 85 db test %ebx,%ebx + 66341be0: 74 11 je 66341bf3 <_pei386_runtime_relocator+0x33> + 66341be2: 48 8d 65 b8 lea -0x48(%rbp),%rsp + 66341be6: 5b pop %rbx + 66341be7: 5e pop %rsi + 66341be8: 5f pop %rdi + 66341be9: 41 5c pop %r12 + 66341beb: 41 5d pop %r13 + 66341bed: 41 5e pop %r14 + 66341bef: 41 5f pop %r15 + 66341bf1: 5d pop %rbp + 66341bf2: c3 retq + 66341bf3: c7 05 e3 59 00 00 01 movl $0x1,0x59e3(%rip) # 663475e0 + 66341bfa: 00 00 00 + 66341bfd: e8 0e 0b 00 00 callq 66342710 <__mingw_GetSectionCount> + 66341c02: 48 98 cltq + 66341c04: 48 8d 04 80 lea (%rax,%rax,4),%rax + 66341c08: 48 8d 04 c5 1e 00 00 lea 0x1e(,%rax,8),%rax + 66341c0f: 00 + 66341c10: 48 83 e0 f0 and $0xfffffffffffffff0,%rax + 66341c14: e8 47 0d 00 00 callq 66342960 <___chkstk_ms> + 66341c19: 4c 8b 25 a0 25 00 00 mov 0x25a0(%rip),%r12 # 663441c0 <.refptr.__RUNTIME_PSEUDO_RELOC_LIST_END__> + 66341c20: c7 05 ba 59 00 00 00 movl $0x0,0x59ba(%rip) # 663475e4 + 66341c27: 00 00 00 + 66341c2a: 48 8b 35 9f 25 00 00 mov 0x259f(%rip),%rsi # 663441d0 <.refptr.__RUNTIME_PSEUDO_RELOC_LIST__> + 66341c31: 48 29 c4 sub %rax,%rsp + 66341c34: 48 8d 44 24 20 lea 0x20(%rsp),%rax + 66341c39: 48 89 05 a8 59 00 00 mov %rax,0x59a8(%rip) # 663475e8 + 66341c40: 4c 89 e0 mov %r12,%rax + 66341c43: 48 29 f0 sub %rsi,%rax + 66341c46: 48 83 f8 07 cmp $0x7,%rax + 66341c4a: 7e 96 jle 66341be2 <_pei386_runtime_relocator+0x22> + 66341c4c: 48 83 f8 0b cmp $0xb,%rax + 66341c50: 8b 16 mov (%rsi),%edx + 66341c52: 0f 8e c8 00 00 00 jle 66341d20 <_pei386_runtime_relocator+0x160> + 66341c58: 85 d2 test %edx,%edx + 66341c5a: 0f 84 a4 00 00 00 je 66341d04 <_pei386_runtime_relocator+0x144> + 66341c60: 4c 39 e6 cmp %r12,%rsi + 66341c63: 0f 83 79 ff ff ff jae 66341be2 <_pei386_runtime_relocator+0x22> + 66341c69: 4c 8d 76 08 lea 0x8(%rsi),%r14 + 66341c6d: 49 83 c4 07 add $0x7,%r12 + 66341c71: 4c 8b 2d 78 25 00 00 mov 0x2578(%rip),%r13 # 663441f0 <.refptr.__image_base__> + 66341c78: 48 8d 7d a8 lea -0x58(%rbp),%rdi + 66341c7c: 4d 29 f4 sub %r14,%r12 + 66341c7f: 49 c1 ec 03 shr $0x3,%r12 + 66341c83: 4e 8d 64 e6 08 lea 0x8(%rsi,%r12,8),%r12 + 66341c88: eb 0a jmp 66341c94 <_pei386_runtime_relocator+0xd4> + 66341c8a: 66 0f 1f 44 00 00 nopw 0x0(%rax,%rax,1) + 66341c90: 49 83 c6 08 add $0x8,%r14 + 66341c94: 8b 4e 04 mov 0x4(%rsi),%ecx + 66341c97: 41 b8 04 00 00 00 mov $0x4,%r8d + 66341c9d: 48 89 fa mov %rdi,%rdx + 66341ca0: 8b 06 mov (%rsi),%eax + 66341ca2: 4c 89 f6 mov %r14,%rsi + 66341ca5: 4c 01 e9 add %r13,%rcx + 66341ca8: 03 01 add (%rcx),%eax + 66341caa: 89 45 a8 mov %eax,-0x58(%rbp) + 66341cad: e8 3e fd ff ff callq 663419f0 <__write_memory.part.0> + 66341cb2: 4d 39 e6 cmp %r12,%r14 + 66341cb5: 75 d9 jne 66341c90 <_pei386_runtime_relocator+0xd0> + 66341cb7: 8b 05 27 59 00 00 mov 0x5927(%rip),%eax # 663475e4 + 66341cbd: 31 f6 xor %esi,%esi + 66341cbf: 4c 8b 25 46 75 00 00 mov 0x7546(%rip),%r12 # 6634920c <__imp_VirtualProtect> + 66341cc6: 85 c0 test %eax,%eax + 66341cc8: 0f 8e 14 ff ff ff jle 66341be2 <_pei386_runtime_relocator+0x22> + 66341cce: 66 90 xchg %ax,%ax + 66341cd0: 48 8b 05 11 59 00 00 mov 0x5911(%rip),%rax # 663475e8 + 66341cd7: 48 01 f0 add %rsi,%rax + 66341cda: 44 8b 00 mov (%rax),%r8d + 66341cdd: 45 85 c0 test %r8d,%r8d + 66341ce0: 74 0e je 66341cf0 <_pei386_runtime_relocator+0x130> + 66341ce2: 48 8b 50 10 mov 0x10(%rax),%rdx + 66341ce6: 49 89 f9 mov %rdi,%r9 + 66341ce9: 48 8b 48 08 mov 0x8(%rax),%rcx + 66341ced: 41 ff d4 callq *%r12 + 66341cf0: 83 c3 01 add $0x1,%ebx + 66341cf3: 48 83 c6 28 add $0x28,%rsi + 66341cf7: 3b 1d e7 58 00 00 cmp 0x58e7(%rip),%ebx # 663475e4 + 66341cfd: 7c d1 jl 66341cd0 <_pei386_runtime_relocator+0x110> + 66341cff: e9 de fe ff ff jmpq 66341be2 <_pei386_runtime_relocator+0x22> + 66341d04: 8b 4e 04 mov 0x4(%rsi),%ecx + 66341d07: 85 c9 test %ecx,%ecx + 66341d09: 0f 85 51 ff ff ff jne 66341c60 <_pei386_runtime_relocator+0xa0> + 66341d0f: 8b 56 08 mov 0x8(%rsi),%edx + 66341d12: 85 d2 test %edx,%edx + 66341d14: 75 1d jne 66341d33 <_pei386_runtime_relocator+0x173> + 66341d16: 8b 56 0c mov 0xc(%rsi),%edx + 66341d19: 48 83 c6 0c add $0xc,%rsi + 66341d1d: 0f 1f 00 nopl (%rax) + 66341d20: 85 d2 test %edx,%edx + 66341d22: 0f 85 38 ff ff ff jne 66341c60 <_pei386_runtime_relocator+0xa0> + 66341d28: 8b 46 04 mov 0x4(%rsi),%eax + 66341d2b: 85 c0 test %eax,%eax + 66341d2d: 0f 85 2d ff ff ff jne 66341c60 <_pei386_runtime_relocator+0xa0> + 66341d33: 8b 56 08 mov 0x8(%rsi),%edx + 66341d36: 83 fa 01 cmp $0x1,%edx + 66341d39: 0f 85 2f 01 00 00 jne 66341e6e <_pei386_runtime_relocator+0x2ae> + 66341d3f: 4c 8b 2d aa 24 00 00 mov 0x24aa(%rip),%r13 # 663441f0 <.refptr.__image_base__> + 66341d46: 48 83 c6 0c add $0xc,%rsi + 66341d4a: 49 bf 00 00 00 00 ff movabs $0xffffffff00000000,%r15 + 66341d51: ff ff ff + 66341d54: 4c 8d 75 a8 lea -0x58(%rbp),%r14 + 66341d58: 4c 39 e6 cmp %r12,%rsi + 66341d5b: 72 48 jb 66341da5 <_pei386_runtime_relocator+0x1e5> + 66341d5d: e9 80 fe ff ff jmpq 66341be2 <_pei386_runtime_relocator+0x22> + 66341d62: 0f 86 b8 00 00 00 jbe 66341e20 <_pei386_runtime_relocator+0x260> + 66341d68: 83 fa 20 cmp $0x20,%edx + 66341d6b: 0f 84 7f 00 00 00 je 66341df0 <_pei386_runtime_relocator+0x230> + 66341d71: 83 fa 40 cmp $0x40,%edx + 66341d74: 0f 85 e0 00 00 00 jne 66341e5a <_pei386_runtime_relocator+0x29a> + 66341d7a: 48 8b 11 mov (%rcx),%rdx + 66341d7d: 41 b8 08 00 00 00 mov $0x8,%r8d + 66341d83: 4c 89 f7 mov %r14,%rdi + 66341d86: 48 29 c2 sub %rax,%rdx + 66341d89: 4c 01 ca add %r9,%rdx + 66341d8c: 48 89 55 a8 mov %rdx,-0x58(%rbp) + 66341d90: 4c 89 f2 mov %r14,%rdx + 66341d93: e8 58 fc ff ff callq 663419f0 <__write_memory.part.0> + 66341d98: 48 83 c6 0c add $0xc,%rsi + 66341d9c: 4c 39 e6 cmp %r12,%rsi + 66341d9f: 0f 83 12 ff ff ff jae 66341cb7 <_pei386_runtime_relocator+0xf7> + 66341da5: 8b 4e 04 mov 0x4(%rsi),%ecx + 66341da8: 8b 06 mov (%rsi),%eax + 66341daa: 0f b6 56 08 movzbl 0x8(%rsi),%edx + 66341dae: 4c 01 e9 add %r13,%rcx + 66341db1: 4c 01 e8 add %r13,%rax + 66341db4: 83 fa 10 cmp $0x10,%edx + 66341db7: 4c 8b 08 mov (%rax),%r9 + 66341dba: 75 a6 jne 66341d62 <_pei386_runtime_relocator+0x1a2> + 66341dbc: 44 0f b7 01 movzwl (%rcx),%r8d + 66341dc0: 4c 89 f2 mov %r14,%rdx + 66341dc3: 4c 89 f7 mov %r14,%rdi + 66341dc6: 4d 89 c2 mov %r8,%r10 + 66341dc9: 49 81 ca 00 00 ff ff or $0xffffffffffff0000,%r10 + 66341dd0: 66 45 85 c0 test %r8w,%r8w + 66341dd4: 4d 0f 48 c2 cmovs %r10,%r8 + 66341dd8: 49 29 c0 sub %rax,%r8 + 66341ddb: 4d 01 c8 add %r9,%r8 + 66341dde: 4c 89 45 a8 mov %r8,-0x58(%rbp) + 66341de2: 41 b8 02 00 00 00 mov $0x2,%r8d + 66341de8: e8 03 fc ff ff callq 663419f0 <__write_memory.part.0> + 66341ded: eb a9 jmp 66341d98 <_pei386_runtime_relocator+0x1d8> + 66341def: 90 nop + 66341df0: 8b 11 mov (%rcx),%edx + 66341df2: 4c 89 f7 mov %r14,%rdi + 66341df5: 49 89 d0 mov %rdx,%r8 + 66341df8: 4c 09 fa or %r15,%rdx + 66341dfb: 45 85 c0 test %r8d,%r8d + 66341dfe: 49 0f 49 d0 cmovns %r8,%rdx + 66341e02: 41 b8 04 00 00 00 mov $0x4,%r8d + 66341e08: 48 29 c2 sub %rax,%rdx + 66341e0b: 4c 01 ca add %r9,%rdx + 66341e0e: 48 89 55 a8 mov %rdx,-0x58(%rbp) + 66341e12: 4c 89 f2 mov %r14,%rdx + 66341e15: e8 d6 fb ff ff callq 663419f0 <__write_memory.part.0> + 66341e1a: e9 79 ff ff ff jmpq 66341d98 <_pei386_runtime_relocator+0x1d8> + 66341e1f: 90 nop + 66341e20: 83 fa 08 cmp $0x8,%edx + 66341e23: 75 35 jne 66341e5a <_pei386_runtime_relocator+0x29a> + 66341e25: 44 0f b6 01 movzbl (%rcx),%r8d + 66341e29: 4c 89 f2 mov %r14,%rdx + 66341e2c: 4c 89 f7 mov %r14,%rdi + 66341e2f: 4d 89 c2 mov %r8,%r10 + 66341e32: 49 81 ca 00 ff ff ff or $0xffffffffffffff00,%r10 + 66341e39: 45 84 c0 test %r8b,%r8b + 66341e3c: 4d 0f 48 c2 cmovs %r10,%r8 + 66341e40: 49 29 c0 sub %rax,%r8 + 66341e43: 4d 01 c8 add %r9,%r8 + 66341e46: 4c 89 45 a8 mov %r8,-0x58(%rbp) + 66341e4a: 41 b8 01 00 00 00 mov $0x1,%r8d + 66341e50: e8 9b fb ff ff callq 663419f0 <__write_memory.part.0> + 66341e55: e9 3e ff ff ff jmpq 66341d98 <_pei386_runtime_relocator+0x1d8> + 66341e5a: 48 8d 0d f7 22 00 00 lea 0x22f7(%rip),%rcx # 66344158 <.rdata+0xd8> + 66341e61: 48 c7 45 a8 00 00 00 movq $0x0,-0x58(%rbp) + 66341e68: 00 + 66341e69: e8 02 0e 00 00 callq 66342c70 <__report_error> + 66341e6e: 48 8d 0d ab 22 00 00 lea 0x22ab(%rip),%rcx # 66344120 <.rdata+0xa0> + 66341e75: e8 f6 0d 00 00 callq 66342c70 <__report_error> + 66341e7a: 90 nop + 66341e7b: 90 nop + 66341e7c: 90 nop + 66341e7d: 90 nop + 66341e7e: 90 nop + 66341e7f: 90 nop + +0000000066341e80 <__mingw_SEH_error_handler>: + 66341e80: 48 83 ec 28 sub $0x28,%rsp + 66341e84: 8b 01 mov (%rcx),%eax + 66341e86: 3d 91 00 00 c0 cmp $0xc0000091,%eax + 66341e8b: 77 63 ja 66341ef0 <__mingw_SEH_error_handler+0x70> + 66341e8d: 3d 8d 00 00 c0 cmp $0xc000008d,%eax + 66341e92: 73 7b jae 66341f0f <__mingw_SEH_error_handler+0x8f> + 66341e94: 3d 08 00 00 c0 cmp $0xc0000008,%eax + 66341e99: 0f 84 05 01 00 00 je 66341fa4 <__mingw_SEH_error_handler+0x124> + 66341e9f: 0f 87 cb 00 00 00 ja 66341f70 <__mingw_SEH_error_handler+0xf0> + 66341ea5: 3d 02 00 00 80 cmp $0x80000002,%eax + 66341eaa: 0f 84 f4 00 00 00 je 66341fa4 <__mingw_SEH_error_handler+0x124> + 66341eb0: 3d 05 00 00 c0 cmp $0xc0000005,%eax + 66341eb5: 0f 85 c3 00 00 00 jne 66341f7e <__mingw_SEH_error_handler+0xfe> + 66341ebb: 31 d2 xor %edx,%edx + 66341ebd: b9 0b 00 00 00 mov $0xb,%ecx + 66341ec2: e8 11 0b 00 00 callq 663429d8 + 66341ec7: 48 83 f8 01 cmp $0x1,%rax + 66341ecb: 0f 84 2f 01 00 00 je 66342000 <__mingw_SEH_error_handler+0x180> + 66341ed1: 48 85 c0 test %rax,%rax + 66341ed4: 0f 84 3c 01 00 00 je 66342016 <__mingw_SEH_error_handler+0x196> + 66341eda: b9 0b 00 00 00 mov $0xb,%ecx + 66341edf: ff d0 callq *%rax + 66341ee1: 31 c0 xor %eax,%eax + 66341ee3: 48 83 c4 28 add $0x28,%rsp + 66341ee7: c3 retq + 66341ee8: 0f 1f 84 00 00 00 00 nopl 0x0(%rax,%rax,1) + 66341eef: 00 + 66341ef0: 3d 94 00 00 c0 cmp $0xc0000094,%eax + 66341ef5: 0f 84 b5 00 00 00 je 66341fb0 <__mingw_SEH_error_handler+0x130> + 66341efb: 77 37 ja 66341f34 <__mingw_SEH_error_handler+0xb4> + 66341efd: 3d 92 00 00 c0 cmp $0xc0000092,%eax + 66341f02: 0f 84 9c 00 00 00 je 66341fa4 <__mingw_SEH_error_handler+0x124> + 66341f08: 3d 93 00 00 c0 cmp $0xc0000093,%eax + 66341f0d: 75 6f jne 66341f7e <__mingw_SEH_error_handler+0xfe> + 66341f0f: 31 d2 xor %edx,%edx + 66341f11: b9 08 00 00 00 mov $0x8,%ecx + 66341f16: e8 bd 0a 00 00 callq 663429d8 + 66341f1b: 48 83 f8 01 cmp $0x1,%rax + 66341f1f: 74 6f je 66341f90 <__mingw_SEH_error_handler+0x110> + 66341f21: 48 85 c0 test %rax,%rax + 66341f24: 74 58 je 66341f7e <__mingw_SEH_error_handler+0xfe> + 66341f26: b9 08 00 00 00 mov $0x8,%ecx + 66341f2b: ff d0 callq *%rax + 66341f2d: 31 c0 xor %eax,%eax + 66341f2f: 48 83 c4 28 add $0x28,%rsp + 66341f33: c3 retq + 66341f34: 3d 95 00 00 c0 cmp $0xc0000095,%eax + 66341f39: 74 69 je 66341fa4 <__mingw_SEH_error_handler+0x124> + 66341f3b: 3d 96 00 00 c0 cmp $0xc0000096,%eax + 66341f40: 75 3c jne 66341f7e <__mingw_SEH_error_handler+0xfe> + 66341f42: 31 d2 xor %edx,%edx + 66341f44: b9 04 00 00 00 mov $0x4,%ecx + 66341f49: e8 8a 0a 00 00 callq 663429d8 + 66341f4e: 48 83 f8 01 cmp $0x1,%rax + 66341f52: 0f 84 88 00 00 00 je 66341fe0 <__mingw_SEH_error_handler+0x160> + 66341f58: 48 85 c0 test %rax,%rax + 66341f5b: 0f 84 b5 00 00 00 je 66342016 <__mingw_SEH_error_handler+0x196> + 66341f61: b9 04 00 00 00 mov $0x4,%ecx + 66341f66: ff d0 callq *%rax + 66341f68: 31 c0 xor %eax,%eax + 66341f6a: 48 83 c4 28 add $0x28,%rsp + 66341f6e: c3 retq + 66341f6f: 90 nop + 66341f70: 3d 1d 00 00 c0 cmp $0xc000001d,%eax + 66341f75: 74 cb je 66341f42 <__mingw_SEH_error_handler+0xc2> + 66341f77: 3d 8c 00 00 c0 cmp $0xc000008c,%eax + 66341f7c: 74 26 je 66341fa4 <__mingw_SEH_error_handler+0x124> + 66341f7e: b8 01 00 00 00 mov $0x1,%eax + 66341f83: 48 83 c4 28 add $0x28,%rsp + 66341f87: c3 retq + 66341f88: 0f 1f 84 00 00 00 00 nopl 0x0(%rax,%rax,1) + 66341f8f: 00 + 66341f90: ba 01 00 00 00 mov $0x1,%edx + 66341f95: b9 08 00 00 00 mov $0x8,%ecx + 66341f9a: e8 39 0a 00 00 callq 663429d8 + 66341f9f: e8 ac 09 00 00 callq 66342950 <_fpreset> + 66341fa4: 31 c0 xor %eax,%eax + 66341fa6: 48 83 c4 28 add $0x28,%rsp + 66341faa: c3 retq + 66341fab: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1) + 66341fb0: 31 d2 xor %edx,%edx + 66341fb2: b9 08 00 00 00 mov $0x8,%ecx + 66341fb7: e8 1c 0a 00 00 callq 663429d8 + 66341fbc: 48 83 f8 01 cmp $0x1,%rax + 66341fc0: 0f 85 5b ff ff ff jne 66341f21 <__mingw_SEH_error_handler+0xa1> + 66341fc6: ba 01 00 00 00 mov $0x1,%edx + 66341fcb: b9 08 00 00 00 mov $0x8,%ecx + 66341fd0: e8 03 0a 00 00 callq 663429d8 + 66341fd5: 31 c0 xor %eax,%eax + 66341fd7: e9 07 ff ff ff jmpq 66341ee3 <__mingw_SEH_error_handler+0x63> + 66341fdc: 0f 1f 40 00 nopl 0x0(%rax) + 66341fe0: ba 01 00 00 00 mov $0x1,%edx + 66341fe5: b9 04 00 00 00 mov $0x4,%ecx + 66341fea: e8 e9 09 00 00 callq 663429d8 + 66341fef: 31 c0 xor %eax,%eax + 66341ff1: e9 ed fe ff ff jmpq 66341ee3 <__mingw_SEH_error_handler+0x63> + 66341ff6: 66 2e 0f 1f 84 00 00 nopw %cs:0x0(%rax,%rax,1) + 66341ffd: 00 00 00 + 66342000: ba 01 00 00 00 mov $0x1,%edx + 66342005: b9 0b 00 00 00 mov $0xb,%ecx + 6634200a: e8 c9 09 00 00 callq 663429d8 + 6634200f: 31 c0 xor %eax,%eax + 66342011: e9 cd fe ff ff jmpq 66341ee3 <__mingw_SEH_error_handler+0x63> + 66342016: b8 04 00 00 00 mov $0x4,%eax + 6634201b: e9 c3 fe ff ff jmpq 66341ee3 <__mingw_SEH_error_handler+0x63> + +0000000066342020 <__mingw_init_ehandler>: + 66342020: 41 54 push %r12 + 66342022: 55 push %rbp + 66342023: 57 push %rdi + 66342024: 56 push %rsi + 66342025: 53 push %rbx + 66342026: 48 83 ec 20 sub $0x20,%rsp + 6634202a: e8 91 07 00 00 callq 663427c0 <_GetPEImageBase> + 6634202f: 48 89 c5 mov %rax,%rbp + 66342032: 8b 05 d0 55 00 00 mov 0x55d0(%rip),%eax # 66347608 + 66342038: 85 c0 test %eax,%eax + 6634203a: 75 25 jne 66342061 <__mingw_init_ehandler+0x41> + 6634203c: 48 85 ed test %rbp,%rbp + 6634203f: 74 20 je 66342061 <__mingw_init_ehandler+0x41> + 66342041: 48 8d 0d 48 21 00 00 lea 0x2148(%rip),%rcx # 66344190 <.rdata> + 66342048: c7 05 b6 55 00 00 01 movl $0x1,0x55b6(%rip) # 66347608 + 6634204f: 00 00 00 + 66342052: e8 a9 05 00 00 callq 66342600 <_FindPESectionByName> + 66342057: 48 85 c0 test %rax,%rax + 6634205a: 74 14 je 66342070 <__mingw_init_ehandler+0x50> + 6634205c: b8 01 00 00 00 mov $0x1,%eax + 66342061: 48 83 c4 20 add $0x20,%rsp + 66342065: 5b pop %rbx + 66342066: 5e pop %rsi + 66342067: 5f pop %rdi + 66342068: 5d pop %rbp + 66342069: 41 5c pop %r12 + 6634206b: c3 retq + 6634206c: 0f 1f 40 00 nopl 0x0(%rax) + 66342070: 48 8d 1d a9 56 00 00 lea 0x56a9(%rip),%rbx # 66347720 + 66342077: b9 30 00 00 00 mov $0x30,%ecx + 6634207c: 31 f6 xor %esi,%esi + 6634207e: 48 8d 15 9b 55 00 00 lea 0x559b(%rip),%rdx # 66347620 + 66342085: 48 89 df mov %rbx,%rdi + 66342088: f3 48 ab rep stos %rax,%es:(%rdi) + 6634208b: 4c 8d 25 ee fd ff ff lea -0x212(%rip),%r12 # 66341e80 <__mingw_SEH_error_handler> + 66342092: b9 20 00 00 00 mov $0x20,%ecx + 66342097: 48 89 d7 mov %rdx,%rdi + 6634209a: f3 48 ab rep stos %rax,%es:(%rdi) + 6634209d: 49 29 ec sub %rbp,%r12 + 663420a0: 48 89 d7 mov %rdx,%rdi + 663420a3: eb 2e jmp 663420d3 <__mingw_init_ehandler+0xb3> + 663420a5: c6 07 09 movb $0x9,(%rdi) + 663420a8: 48 83 c6 01 add $0x1,%rsi + 663420ac: 48 83 c3 0c add $0xc,%rbx + 663420b0: 44 89 67 04 mov %r12d,0x4(%rdi) + 663420b4: 8b 48 0c mov 0xc(%rax),%ecx + 663420b7: 89 4b f4 mov %ecx,-0xc(%rbx) + 663420ba: 03 48 08 add 0x8(%rax),%ecx + 663420bd: 48 89 f8 mov %rdi,%rax + 663420c0: 48 83 c7 08 add $0x8,%rdi + 663420c4: 48 29 e8 sub %rbp,%rax + 663420c7: 89 43 fc mov %eax,-0x4(%rbx) + 663420ca: 89 4b f8 mov %ecx,-0x8(%rbx) + 663420cd: 48 83 fe 20 cmp $0x20,%rsi + 663420d1: 74 32 je 66342105 <__mingw_init_ehandler+0xe5> + 663420d3: 48 89 f1 mov %rsi,%rcx + 663420d6: e8 75 06 00 00 callq 66342750 <_FindPESectionExec> + 663420db: 48 85 c0 test %rax,%rax + 663420de: 75 c5 jne 663420a5 <__mingw_init_ehandler+0x85> + 663420e0: 48 85 f6 test %rsi,%rsi + 663420e3: 89 f2 mov %esi,%edx + 663420e5: 0f 84 71 ff ff ff je 6634205c <__mingw_init_ehandler+0x3c> + 663420eb: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1) + 663420f0: 48 8d 0d 29 56 00 00 lea 0x5629(%rip),%rcx # 66347720 + 663420f7: 49 89 e8 mov %rbp,%r8 + 663420fa: ff 15 c4 70 00 00 callq *0x70c4(%rip) # 663491c4 <__imp_RtlAddFunctionTable> + 66342100: e9 57 ff ff ff jmpq 6634205c <__mingw_init_ehandler+0x3c> + 66342105: ba 20 00 00 00 mov $0x20,%edx + 6634210a: eb e4 jmp 663420f0 <__mingw_init_ehandler+0xd0> + 6634210c: 0f 1f 40 00 nopl 0x0(%rax) + +0000000066342110 <_gnu_exception_handler>: + 66342110: 53 push %rbx + 66342111: 48 83 ec 20 sub $0x20,%rsp + 66342115: 48 8b 11 mov (%rcx),%rdx + 66342118: 8b 02 mov (%rdx),%eax + 6634211a: 48 89 cb mov %rcx,%rbx + 6634211d: 89 c1 mov %eax,%ecx + 6634211f: 81 e1 ff ff ff 20 and $0x20ffffff,%ecx + 66342125: 81 f9 43 43 47 20 cmp $0x20474343,%ecx + 6634212b: 0f 84 bf 00 00 00 je 663421f0 <_gnu_exception_handler+0xe0> + 66342131: 3d 91 00 00 c0 cmp $0xc0000091,%eax + 66342136: 77 68 ja 663421a0 <_gnu_exception_handler+0x90> + 66342138: 3d 8d 00 00 c0 cmp $0xc000008d,%eax + 6634213d: 73 7c jae 663421bb <_gnu_exception_handler+0xab> + 6634213f: 3d 08 00 00 c0 cmp $0xc0000008,%eax + 66342144: 0f 84 b0 00 00 00 je 663421fa <_gnu_exception_handler+0xea> + 6634214a: 0f 87 f4 00 00 00 ja 66342244 <_gnu_exception_handler+0x134> + 66342150: 3d 02 00 00 80 cmp $0x80000002,%eax + 66342155: 0f 84 9f 00 00 00 je 663421fa <_gnu_exception_handler+0xea> + 6634215b: 3d 05 00 00 c0 cmp $0xc0000005,%eax + 66342160: 75 1f jne 66342181 <_gnu_exception_handler+0x71> + 66342162: 31 d2 xor %edx,%edx + 66342164: b9 0b 00 00 00 mov $0xb,%ecx + 66342169: e8 6a 08 00 00 callq 663429d8 + 6634216e: 48 83 f8 01 cmp $0x1,%rax + 66342172: 0f 84 51 01 00 00 je 663422c9 <_gnu_exception_handler+0x1b9> + 66342178: 48 85 c0 test %rax,%rax + 6634217b: 0f 85 0f 01 00 00 jne 66342290 <_gnu_exception_handler+0x180> + 66342181: 48 8b 05 78 54 00 00 mov 0x5478(%rip),%rax # 66347600 <__mingw_oldexcpt_handler> + 66342188: 48 85 c0 test %rax,%rax + 6634218b: 0f 84 10 01 00 00 je 663422a1 <_gnu_exception_handler+0x191> + 66342191: 48 89 d9 mov %rbx,%rcx + 66342194: 48 83 c4 20 add $0x20,%rsp + 66342198: 5b pop %rbx + 66342199: 48 ff e0 rex.W jmpq *%rax + 6634219c: 0f 1f 40 00 nopl 0x0(%rax) + 663421a0: 3d 94 00 00 c0 cmp $0xc0000094,%eax + 663421a5: 0f 84 b5 00 00 00 je 66342260 <_gnu_exception_handler+0x150> + 663421ab: 77 58 ja 66342205 <_gnu_exception_handler+0xf5> + 663421ad: 3d 92 00 00 c0 cmp $0xc0000092,%eax + 663421b2: 74 46 je 663421fa <_gnu_exception_handler+0xea> + 663421b4: 3d 93 00 00 c0 cmp $0xc0000093,%eax + 663421b9: 75 c6 jne 66342181 <_gnu_exception_handler+0x71> + 663421bb: 31 d2 xor %edx,%edx + 663421bd: b9 08 00 00 00 mov $0x8,%ecx + 663421c2: e8 11 08 00 00 callq 663429d8 + 663421c7: 48 83 f8 01 cmp $0x1,%rax + 663421cb: 0f 84 df 00 00 00 je 663422b0 <_gnu_exception_handler+0x1a0> + 663421d1: 48 85 c0 test %rax,%rax + 663421d4: 74 ab je 66342181 <_gnu_exception_handler+0x71> + 663421d6: b9 08 00 00 00 mov $0x8,%ecx + 663421db: ff d0 callq *%rax + 663421dd: b8 ff ff ff ff mov $0xffffffff,%eax + 663421e2: 48 83 c4 20 add $0x20,%rsp + 663421e6: 5b pop %rbx + 663421e7: c3 retq + 663421e8: 0f 1f 84 00 00 00 00 nopl 0x0(%rax,%rax,1) + 663421ef: 00 + 663421f0: f6 42 04 01 testb $0x1,0x4(%rdx) + 663421f4: 0f 85 37 ff ff ff jne 66342131 <_gnu_exception_handler+0x21> + 663421fa: b8 ff ff ff ff mov $0xffffffff,%eax + 663421ff: 48 83 c4 20 add $0x20,%rsp + 66342203: 5b pop %rbx + 66342204: c3 retq + 66342205: 3d 95 00 00 c0 cmp $0xc0000095,%eax + 6634220a: 74 ee je 663421fa <_gnu_exception_handler+0xea> + 6634220c: 3d 96 00 00 c0 cmp $0xc0000096,%eax + 66342211: 0f 85 6a ff ff ff jne 66342181 <_gnu_exception_handler+0x71> + 66342217: 31 d2 xor %edx,%edx + 66342219: b9 04 00 00 00 mov $0x4,%ecx + 6634221e: e8 b5 07 00 00 callq 663429d8 + 66342223: 48 83 f8 01 cmp $0x1,%rax + 66342227: 0f 84 b3 00 00 00 je 663422e0 <_gnu_exception_handler+0x1d0> + 6634222d: 48 85 c0 test %rax,%rax + 66342230: 0f 84 4b ff ff ff je 66342181 <_gnu_exception_handler+0x71> + 66342236: b9 04 00 00 00 mov $0x4,%ecx + 6634223b: ff d0 callq *%rax + 6634223d: b8 ff ff ff ff mov $0xffffffff,%eax + 66342242: eb 9e jmp 663421e2 <_gnu_exception_handler+0xd2> + 66342244: 3d 1d 00 00 c0 cmp $0xc000001d,%eax + 66342249: 74 cc je 66342217 <_gnu_exception_handler+0x107> + 6634224b: 3d 8c 00 00 c0 cmp $0xc000008c,%eax + 66342250: 0f 85 2b ff ff ff jne 66342181 <_gnu_exception_handler+0x71> + 66342256: eb a2 jmp 663421fa <_gnu_exception_handler+0xea> + 66342258: 0f 1f 84 00 00 00 00 nopl 0x0(%rax,%rax,1) + 6634225f: 00 + 66342260: 31 d2 xor %edx,%edx + 66342262: b9 08 00 00 00 mov $0x8,%ecx + 66342267: e8 6c 07 00 00 callq 663429d8 + 6634226c: 48 83 f8 01 cmp $0x1,%rax + 66342270: 0f 85 5b ff ff ff jne 663421d1 <_gnu_exception_handler+0xc1> + 66342276: ba 01 00 00 00 mov $0x1,%edx + 6634227b: b9 08 00 00 00 mov $0x8,%ecx + 66342280: e8 53 07 00 00 callq 663429d8 + 66342285: b8 ff ff ff ff mov $0xffffffff,%eax + 6634228a: e9 53 ff ff ff jmpq 663421e2 <_gnu_exception_handler+0xd2> + 6634228f: 90 nop + 66342290: b9 0b 00 00 00 mov $0xb,%ecx + 66342295: ff d0 callq *%rax + 66342297: b8 ff ff ff ff mov $0xffffffff,%eax + 6634229c: e9 41 ff ff ff jmpq 663421e2 <_gnu_exception_handler+0xd2> + 663422a1: 31 c0 xor %eax,%eax + 663422a3: e9 3a ff ff ff jmpq 663421e2 <_gnu_exception_handler+0xd2> + 663422a8: 0f 1f 84 00 00 00 00 nopl 0x0(%rax,%rax,1) + 663422af: 00 + 663422b0: ba 01 00 00 00 mov $0x1,%edx + 663422b5: b9 08 00 00 00 mov $0x8,%ecx + 663422ba: e8 19 07 00 00 callq 663429d8 + 663422bf: e8 8c 06 00 00 callq 66342950 <_fpreset> + 663422c4: e9 31 ff ff ff jmpq 663421fa <_gnu_exception_handler+0xea> + 663422c9: ba 01 00 00 00 mov $0x1,%edx + 663422ce: b9 0b 00 00 00 mov $0xb,%ecx + 663422d3: e8 00 07 00 00 callq 663429d8 + 663422d8: 83 c8 ff or $0xffffffff,%eax + 663422db: e9 02 ff ff ff jmpq 663421e2 <_gnu_exception_handler+0xd2> + 663422e0: ba 01 00 00 00 mov $0x1,%edx + 663422e5: b9 04 00 00 00 mov $0x4,%ecx + 663422ea: e8 e9 06 00 00 callq 663429d8 + 663422ef: 83 c8 ff or $0xffffffff,%eax + 663422f2: e9 eb fe ff ff jmpq 663421e2 <_gnu_exception_handler+0xd2> + 663422f7: 90 nop + 663422f8: 90 nop + 663422f9: 90 nop + 663422fa: 90 nop + 663422fb: 90 nop + 663422fc: 90 nop + 663422fd: 90 nop + 663422fe: 90 nop + 663422ff: 90 nop + +0000000066342300 <__mingwthr_run_key_dtors.part.0>: + 66342300: 55 push %rbp + 66342301: 57 push %rdi + 66342302: 56 push %rsi + 66342303: 53 push %rbx + 66342304: 48 83 ec 28 sub $0x28,%rsp + 66342308: 48 8d 0d b1 55 00 00 lea 0x55b1(%rip),%rcx # 663478c0 <__mingwthr_cs> + 6634230f: ff 15 5f 6e 00 00 callq *0x6e5f(%rip) # 66349174 <__imp_EnterCriticalSection> + 66342315: 48 8b 1d 84 55 00 00 mov 0x5584(%rip),%rbx # 663478a0 + 6634231c: 48 85 db test %rbx,%rbx + 6634231f: 74 33 je 66342354 <__mingwthr_run_key_dtors.part.0+0x54> + 66342321: 48 8b 2d d4 6e 00 00 mov 0x6ed4(%rip),%rbp # 663491fc <__imp_TlsGetValue> + 66342328: 48 8b 3d 65 6e 00 00 mov 0x6e65(%rip),%rdi # 66349194 <__imp_GetLastError> + 6634232f: 90 nop + 66342330: 8b 0b mov (%rbx),%ecx + 66342332: ff d5 callq *%rbp + 66342334: 48 89 c6 mov %rax,%rsi + 66342337: ff d7 callq *%rdi + 66342339: 85 c0 test %eax,%eax + 6634233b: 75 0e jne 6634234b <__mingwthr_run_key_dtors.part.0+0x4b> + 6634233d: 48 85 f6 test %rsi,%rsi + 66342340: 74 09 je 6634234b <__mingwthr_run_key_dtors.part.0+0x4b> + 66342342: 48 8b 43 08 mov 0x8(%rbx),%rax + 66342346: 48 89 f1 mov %rsi,%rcx + 66342349: ff d0 callq *%rax + 6634234b: 48 8b 5b 10 mov 0x10(%rbx),%rbx + 6634234f: 48 85 db test %rbx,%rbx + 66342352: 75 dc jne 66342330 <__mingwthr_run_key_dtors.part.0+0x30> + 66342354: 48 8d 0d 65 55 00 00 lea 0x5565(%rip),%rcx # 663478c0 <__mingwthr_cs> + 6634235b: 48 83 c4 28 add $0x28,%rsp + 6634235f: 5b pop %rbx + 66342360: 5e pop %rsi + 66342361: 5f pop %rdi + 66342362: 5d pop %rbp + 66342363: 48 ff 25 4a 6e 00 00 rex.W jmpq *0x6e4a(%rip) # 663491b4 <__imp_LeaveCriticalSection> + 6634236a: 66 0f 1f 44 00 00 nopw 0x0(%rax,%rax,1) + +0000000066342370 <___w64_mingwthr_add_key_dtor>: + 66342370: 55 push %rbp + 66342371: 57 push %rdi + 66342372: 56 push %rsi + 66342373: 53 push %rbx + 66342374: 48 83 ec 28 sub $0x28,%rsp + 66342378: 8b 05 2a 55 00 00 mov 0x552a(%rip),%eax # 663478a8 <__mingwthr_cs_init> + 6634237e: 31 f6 xor %esi,%esi + 66342380: 85 c0 test %eax,%eax + 66342382: 89 cd mov %ecx,%ebp + 66342384: 48 89 d7 mov %rdx,%rdi + 66342387: 75 0b jne 66342394 <___w64_mingwthr_add_key_dtor+0x24> + 66342389: 89 f0 mov %esi,%eax + 6634238b: 48 83 c4 28 add $0x28,%rsp + 6634238f: 5b pop %rbx + 66342390: 5e pop %rsi + 66342391: 5f pop %rdi + 66342392: 5d pop %rbp + 66342393: c3 retq + 66342394: ba 18 00 00 00 mov $0x18,%edx + 66342399: b9 01 00 00 00 mov $0x1,%ecx + 6634239e: e8 4d 06 00 00 callq 663429f0 + 663423a3: 48 85 c0 test %rax,%rax + 663423a6: 48 89 c3 mov %rax,%rbx + 663423a9: 74 3d je 663423e8 <___w64_mingwthr_add_key_dtor+0x78> + 663423ab: 89 28 mov %ebp,(%rax) + 663423ad: 48 8d 0d 0c 55 00 00 lea 0x550c(%rip),%rcx # 663478c0 <__mingwthr_cs> + 663423b4: 48 89 78 08 mov %rdi,0x8(%rax) + 663423b8: ff 15 b6 6d 00 00 callq *0x6db6(%rip) # 66349174 <__imp_EnterCriticalSection> + 663423be: 48 8b 05 db 54 00 00 mov 0x54db(%rip),%rax # 663478a0 + 663423c5: 48 8d 0d f4 54 00 00 lea 0x54f4(%rip),%rcx # 663478c0 <__mingwthr_cs> + 663423cc: 48 89 1d cd 54 00 00 mov %rbx,0x54cd(%rip) # 663478a0 + 663423d3: 48 89 43 10 mov %rax,0x10(%rbx) + 663423d7: ff 15 d7 6d 00 00 callq *0x6dd7(%rip) # 663491b4 <__imp_LeaveCriticalSection> + 663423dd: 89 f0 mov %esi,%eax + 663423df: 48 83 c4 28 add $0x28,%rsp + 663423e3: 5b pop %rbx + 663423e4: 5e pop %rsi + 663423e5: 5f pop %rdi + 663423e6: 5d pop %rbp + 663423e7: c3 retq + 663423e8: be ff ff ff ff mov $0xffffffff,%esi + 663423ed: eb 9a jmp 66342389 <___w64_mingwthr_add_key_dtor+0x19> + 663423ef: 90 nop + +00000000663423f0 <___w64_mingwthr_remove_key_dtor>: + 663423f0: 53 push %rbx + 663423f1: 48 83 ec 20 sub $0x20,%rsp + 663423f5: 8b 05 ad 54 00 00 mov 0x54ad(%rip),%eax # 663478a8 <__mingwthr_cs_init> + 663423fb: 85 c0 test %eax,%eax + 663423fd: 89 cb mov %ecx,%ebx + 663423ff: 75 0f jne 66342410 <___w64_mingwthr_remove_key_dtor+0x20> + 66342401: 31 c0 xor %eax,%eax + 66342403: 48 83 c4 20 add $0x20,%rsp + 66342407: 5b pop %rbx + 66342408: c3 retq + 66342409: 0f 1f 80 00 00 00 00 nopl 0x0(%rax) + 66342410: 48 8d 0d a9 54 00 00 lea 0x54a9(%rip),%rcx # 663478c0 <__mingwthr_cs> + 66342417: ff 15 57 6d 00 00 callq *0x6d57(%rip) # 66349174 <__imp_EnterCriticalSection> + 6634241d: 48 8b 05 7c 54 00 00 mov 0x547c(%rip),%rax # 663478a0 + 66342424: 48 85 c0 test %rax,%rax + 66342427: 74 1a je 66342443 <___w64_mingwthr_remove_key_dtor+0x53> + 66342429: 8b 10 mov (%rax),%edx + 6634242b: 39 d3 cmp %edx,%ebx + 6634242d: 75 0b jne 6634243a <___w64_mingwthr_remove_key_dtor+0x4a> + 6634242f: eb 4f jmp 66342480 <___w64_mingwthr_remove_key_dtor+0x90> + 66342431: 8b 11 mov (%rcx),%edx + 66342433: 39 da cmp %ebx,%edx + 66342435: 74 29 je 66342460 <___w64_mingwthr_remove_key_dtor+0x70> + 66342437: 48 89 c8 mov %rcx,%rax + 6634243a: 48 8b 48 10 mov 0x10(%rax),%rcx + 6634243e: 48 85 c9 test %rcx,%rcx + 66342441: 75 ee jne 66342431 <___w64_mingwthr_remove_key_dtor+0x41> + 66342443: 48 8d 0d 76 54 00 00 lea 0x5476(%rip),%rcx # 663478c0 <__mingwthr_cs> + 6634244a: ff 15 64 6d 00 00 callq *0x6d64(%rip) # 663491b4 <__imp_LeaveCriticalSection> + 66342450: 31 c0 xor %eax,%eax + 66342452: 48 83 c4 20 add $0x20,%rsp + 66342456: 5b pop %rbx + 66342457: c3 retq + 66342458: 0f 1f 84 00 00 00 00 nopl 0x0(%rax,%rax,1) + 6634245f: 00 + 66342460: 48 8b 51 10 mov 0x10(%rcx),%rdx + 66342464: 48 89 50 10 mov %rdx,0x10(%rax) + 66342468: e8 7b 05 00 00 callq 663429e8 + 6634246d: 48 8d 0d 4c 54 00 00 lea 0x544c(%rip),%rcx # 663478c0 <__mingwthr_cs> + 66342474: ff 15 3a 6d 00 00 callq *0x6d3a(%rip) # 663491b4 <__imp_LeaveCriticalSection> + 6634247a: eb d4 jmp 66342450 <___w64_mingwthr_remove_key_dtor+0x60> + 6634247c: 0f 1f 40 00 nopl 0x0(%rax) + 66342480: 48 8b 50 10 mov 0x10(%rax),%rdx + 66342484: 48 89 c1 mov %rax,%rcx + 66342487: 48 89 15 12 54 00 00 mov %rdx,0x5412(%rip) # 663478a0 + 6634248e: eb d8 jmp 66342468 <___w64_mingwthr_remove_key_dtor+0x78> + +0000000066342490 <__mingw_TLScallback>: + 66342490: 53 push %rbx + 66342491: 48 83 ec 20 sub $0x20,%rsp + 66342495: 83 fa 01 cmp $0x1,%edx + 66342498: 0f 84 92 00 00 00 je 66342530 <__mingw_TLScallback+0xa0> + 6634249e: 72 30 jb 663424d0 <__mingw_TLScallback+0x40> + 663424a0: 83 fa 02 cmp $0x2,%edx + 663424a3: 74 1b je 663424c0 <__mingw_TLScallback+0x30> + 663424a5: 83 fa 03 cmp $0x3,%edx + 663424a8: 75 1b jne 663424c5 <__mingw_TLScallback+0x35> + 663424aa: 8b 05 f8 53 00 00 mov 0x53f8(%rip),%eax # 663478a8 <__mingwthr_cs_init> + 663424b0: 85 c0 test %eax,%eax + 663424b2: 74 11 je 663424c5 <__mingw_TLScallback+0x35> + 663424b4: e8 47 fe ff ff callq 66342300 <__mingwthr_run_key_dtors.part.0> + 663424b9: eb 0a jmp 663424c5 <__mingw_TLScallback+0x35> + 663424bb: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1) + 663424c0: e8 8b 04 00 00 callq 66342950 <_fpreset> + 663424c5: b8 01 00 00 00 mov $0x1,%eax + 663424ca: 48 83 c4 20 add $0x20,%rsp + 663424ce: 5b pop %rbx + 663424cf: c3 retq + 663424d0: 8b 05 d2 53 00 00 mov 0x53d2(%rip),%eax # 663478a8 <__mingwthr_cs_init> + 663424d6: 85 c0 test %eax,%eax + 663424d8: 0f 85 82 00 00 00 jne 66342560 <__mingw_TLScallback+0xd0> + 663424de: 8b 05 c4 53 00 00 mov 0x53c4(%rip),%eax # 663478a8 <__mingwthr_cs_init> + 663424e4: 83 f8 01 cmp $0x1,%eax + 663424e7: 75 dc jne 663424c5 <__mingw_TLScallback+0x35> + 663424e9: 48 8b 0d b0 53 00 00 mov 0x53b0(%rip),%rcx # 663478a0 + 663424f0: 48 85 c9 test %rcx,%rcx + 663424f3: 74 11 je 66342506 <__mingw_TLScallback+0x76> + 663424f5: 48 8b 59 10 mov 0x10(%rcx),%rbx + 663424f9: e8 ea 04 00 00 callq 663429e8 + 663424fe: 48 85 db test %rbx,%rbx + 66342501: 48 89 d9 mov %rbx,%rcx + 66342504: 75 ef jne 663424f5 <__mingw_TLScallback+0x65> + 66342506: 48 8d 0d b3 53 00 00 lea 0x53b3(%rip),%rcx # 663478c0 <__mingwthr_cs> + 6634250d: 48 c7 05 88 53 00 00 movq $0x0,0x5388(%rip) # 663478a0 + 66342514: 00 00 00 00 + 66342518: c7 05 86 53 00 00 00 movl $0x0,0x5386(%rip) # 663478a8 <__mingwthr_cs_init> + 6634251f: 00 00 00 + 66342522: ff 15 44 6c 00 00 callq *0x6c44(%rip) # 6634916c <__IAT_start__> + 66342528: eb 9b jmp 663424c5 <__mingw_TLScallback+0x35> + 6634252a: 66 0f 1f 44 00 00 nopw 0x0(%rax,%rax,1) + 66342530: 8b 05 72 53 00 00 mov 0x5372(%rip),%eax # 663478a8 <__mingwthr_cs_init> + 66342536: 85 c0 test %eax,%eax + 66342538: 74 16 je 66342550 <__mingw_TLScallback+0xc0> + 6634253a: c7 05 64 53 00 00 01 movl $0x1,0x5364(%rip) # 663478a8 <__mingwthr_cs_init> + 66342541: 00 00 00 + 66342544: b8 01 00 00 00 mov $0x1,%eax + 66342549: 48 83 c4 20 add $0x20,%rsp + 6634254d: 5b pop %rbx + 6634254e: c3 retq + 6634254f: 90 nop + 66342550: 48 8d 0d 69 53 00 00 lea 0x5369(%rip),%rcx # 663478c0 <__mingwthr_cs> + 66342557: ff 15 4f 6c 00 00 callq *0x6c4f(%rip) # 663491ac <__imp_InitializeCriticalSection> + 6634255d: eb db jmp 6634253a <__mingw_TLScallback+0xaa> + 6634255f: 90 nop + 66342560: e8 9b fd ff ff callq 66342300 <__mingwthr_run_key_dtors.part.0> + 66342565: e9 74 ff ff ff jmpq 663424de <__mingw_TLScallback+0x4e> + 6634256a: 90 nop + 6634256b: 90 nop + 6634256c: 90 nop + 6634256d: 90 nop + 6634256e: 90 nop + 6634256f: 90 nop + +0000000066342570 <_ValidateImageBase.part.0>: + 66342570: 48 63 41 3c movslq 0x3c(%rcx),%rax + 66342574: 48 01 c1 add %rax,%rcx + 66342577: 31 c0 xor %eax,%eax + 66342579: 81 39 50 45 00 00 cmpl $0x4550,(%rcx) + 6634257f: 74 01 je 66342582 <_ValidateImageBase.part.0+0x12> + 66342581: c3 retq + 66342582: 31 c0 xor %eax,%eax + 66342584: 66 81 79 18 0b 02 cmpw $0x20b,0x18(%rcx) + 6634258a: 0f 94 c0 sete %al + 6634258d: c3 retq + 6634258e: 66 90 xchg %ax,%ax + +0000000066342590 <_ValidateImageBase>: + 66342590: 66 81 39 4d 5a cmpw $0x5a4d,(%rcx) + 66342595: 74 09 je 663425a0 <_ValidateImageBase+0x10> + 66342597: 31 c0 xor %eax,%eax + 66342599: c3 retq + 6634259a: 66 0f 1f 44 00 00 nopw 0x0(%rax,%rax,1) + 663425a0: eb ce jmp 66342570 <_ValidateImageBase.part.0> + 663425a2: 0f 1f 40 00 nopl 0x0(%rax) + 663425a6: 66 2e 0f 1f 84 00 00 nopw %cs:0x0(%rax,%rax,1) + 663425ad: 00 00 00 + +00000000663425b0 <_FindPESection>: + 663425b0: 48 63 41 3c movslq 0x3c(%rcx),%rax + 663425b4: 48 01 c1 add %rax,%rcx + 663425b7: 0f b7 41 14 movzwl 0x14(%rcx),%eax + 663425bb: 48 8d 44 01 18 lea 0x18(%rcx,%rax,1),%rax + 663425c0: 0f b7 49 06 movzwl 0x6(%rcx),%ecx + 663425c4: 85 c9 test %ecx,%ecx + 663425c6: 74 29 je 663425f1 <_FindPESection+0x41> + 663425c8: 83 e9 01 sub $0x1,%ecx + 663425cb: 48 8d 0c 89 lea (%rcx,%rcx,4),%rcx + 663425cf: 4c 8d 4c c8 28 lea 0x28(%rax,%rcx,8),%r9 + 663425d4: 44 8b 40 0c mov 0xc(%rax),%r8d + 663425d8: 49 39 d0 cmp %rdx,%r8 + 663425db: 4c 89 c1 mov %r8,%rcx + 663425de: 77 08 ja 663425e8 <_FindPESection+0x38> + 663425e0: 03 48 08 add 0x8(%rax),%ecx + 663425e3: 48 39 d1 cmp %rdx,%rcx + 663425e6: 77 0b ja 663425f3 <_FindPESection+0x43> + 663425e8: 48 83 c0 28 add $0x28,%rax + 663425ec: 4c 39 c8 cmp %r9,%rax + 663425ef: 75 e3 jne 663425d4 <_FindPESection+0x24> + 663425f1: 31 c0 xor %eax,%eax + 663425f3: c3 retq + 663425f4: 66 90 xchg %ax,%ax + 663425f6: 66 2e 0f 1f 84 00 00 nopw %cs:0x0(%rax,%rax,1) + 663425fd: 00 00 00 + +0000000066342600 <_FindPESectionByName>: + 66342600: 57 push %rdi + 66342601: 56 push %rsi + 66342602: 53 push %rbx + 66342603: 48 83 ec 20 sub $0x20,%rsp + 66342607: 48 89 ce mov %rcx,%rsi + 6634260a: e8 c1 03 00 00 callq 663429d0 + 6634260f: 48 83 f8 08 cmp $0x8,%rax + 66342613: 77 6b ja 66342680 <_FindPESectionByName+0x80> + 66342615: 48 8b 15 d4 1b 00 00 mov 0x1bd4(%rip),%rdx # 663441f0 <.refptr.__image_base__> + 6634261c: 66 81 3a 4d 5a cmpw $0x5a4d,(%rdx) + 66342621: 75 5d jne 66342680 <_FindPESectionByName+0x80> + 66342623: 48 89 d1 mov %rdx,%rcx + 66342626: e8 45 ff ff ff callq 66342570 <_ValidateImageBase.part.0> + 6634262b: 85 c0 test %eax,%eax + 6634262d: 74 51 je 66342680 <_FindPESectionByName+0x80> + 6634262f: 48 63 4a 3c movslq 0x3c(%rdx),%rcx + 66342633: 48 01 d1 add %rdx,%rcx + 66342636: 0f b7 41 14 movzwl 0x14(%rcx),%eax + 6634263a: 48 8d 5c 01 18 lea 0x18(%rcx,%rax,1),%rbx + 6634263f: 0f b7 41 06 movzwl 0x6(%rcx),%eax + 66342643: 85 c0 test %eax,%eax + 66342645: 74 39 je 66342680 <_FindPESectionByName+0x80> + 66342647: 83 e8 01 sub $0x1,%eax + 6634264a: 48 8d 04 80 lea (%rax,%rax,4),%rax + 6634264e: 48 8d 7c c3 28 lea 0x28(%rbx,%rax,8),%rdi + 66342653: eb 09 jmp 6634265e <_FindPESectionByName+0x5e> + 66342655: 48 83 c3 28 add $0x28,%rbx + 66342659: 48 39 fb cmp %rdi,%rbx + 6634265c: 74 22 je 66342680 <_FindPESectionByName+0x80> + 6634265e: 41 b8 08 00 00 00 mov $0x8,%r8d + 66342664: 48 89 f2 mov %rsi,%rdx + 66342667: 48 89 d9 mov %rbx,%rcx + 6634266a: e8 59 03 00 00 callq 663429c8 + 6634266f: 85 c0 test %eax,%eax + 66342671: 75 e2 jne 66342655 <_FindPESectionByName+0x55> + 66342673: 48 89 d8 mov %rbx,%rax + 66342676: 48 83 c4 20 add $0x20,%rsp + 6634267a: 5b pop %rbx + 6634267b: 5e pop %rsi + 6634267c: 5f pop %rdi + 6634267d: c3 retq + 6634267e: 66 90 xchg %ax,%ax + 66342680: 31 db xor %ebx,%ebx + 66342682: 48 89 d8 mov %rbx,%rax + 66342685: 48 83 c4 20 add $0x20,%rsp + 66342689: 5b pop %rbx + 6634268a: 5e pop %rsi + 6634268b: 5f pop %rdi + 6634268c: c3 retq + 6634268d: 0f 1f 00 nopl (%rax) + +0000000066342690 <__mingw_GetSectionForAddress>: + 66342690: 48 83 ec 28 sub $0x28,%rsp + 66342694: 4c 8b 05 55 1b 00 00 mov 0x1b55(%rip),%r8 # 663441f0 <.refptr.__image_base__> + 6634269b: 66 41 81 38 4d 5a cmpw $0x5a4d,(%r8) + 663426a1: 48 89 ca mov %rcx,%rdx + 663426a4: 75 57 jne 663426fd <__mingw_GetSectionForAddress+0x6d> + 663426a6: 4c 89 c1 mov %r8,%rcx + 663426a9: e8 c2 fe ff ff callq 66342570 <_ValidateImageBase.part.0> + 663426ae: 85 c0 test %eax,%eax + 663426b0: 74 4b je 663426fd <__mingw_GetSectionForAddress+0x6d> + 663426b2: 49 63 40 3c movslq 0x3c(%r8),%rax + 663426b6: 48 89 d1 mov %rdx,%rcx + 663426b9: 4c 29 c1 sub %r8,%rcx + 663426bc: 49 01 c0 add %rax,%r8 + 663426bf: 41 0f b7 50 06 movzwl 0x6(%r8),%edx + 663426c4: 41 0f b7 40 14 movzwl 0x14(%r8),%eax + 663426c9: 85 d2 test %edx,%edx + 663426cb: 49 8d 44 00 18 lea 0x18(%r8,%rax,1),%rax + 663426d0: 74 2b je 663426fd <__mingw_GetSectionForAddress+0x6d> + 663426d2: 83 ea 01 sub $0x1,%edx + 663426d5: 48 8d 14 92 lea (%rdx,%rdx,4),%rdx + 663426d9: 4c 8d 4c d0 28 lea 0x28(%rax,%rdx,8),%r9 + 663426de: 66 90 xchg %ax,%ax + 663426e0: 44 8b 40 0c mov 0xc(%rax),%r8d + 663426e4: 4c 39 c1 cmp %r8,%rcx + 663426e7: 4c 89 c2 mov %r8,%rdx + 663426ea: 72 08 jb 663426f4 <__mingw_GetSectionForAddress+0x64> + 663426ec: 03 50 08 add 0x8(%rax),%edx + 663426ef: 48 39 d1 cmp %rdx,%rcx + 663426f2: 72 0b jb 663426ff <__mingw_GetSectionForAddress+0x6f> + 663426f4: 48 83 c0 28 add $0x28,%rax + 663426f8: 4c 39 c8 cmp %r9,%rax + 663426fb: 75 e3 jne 663426e0 <__mingw_GetSectionForAddress+0x50> + 663426fd: 31 c0 xor %eax,%eax + 663426ff: 48 83 c4 28 add $0x28,%rsp + 66342703: c3 retq + 66342704: 66 90 xchg %ax,%ax + 66342706: 66 2e 0f 1f 84 00 00 nopw %cs:0x0(%rax,%rax,1) + 6634270d: 00 00 00 + +0000000066342710 <__mingw_GetSectionCount>: + 66342710: 48 83 ec 28 sub $0x28,%rsp + 66342714: 48 8b 15 d5 1a 00 00 mov 0x1ad5(%rip),%rdx # 663441f0 <.refptr.__image_base__> + 6634271b: 45 31 c0 xor %r8d,%r8d + 6634271e: 66 81 3a 4d 5a cmpw $0x5a4d,(%rdx) + 66342723: 74 0b je 66342730 <__mingw_GetSectionCount+0x20> + 66342725: 44 89 c0 mov %r8d,%eax + 66342728: 48 83 c4 28 add $0x28,%rsp + 6634272c: c3 retq + 6634272d: 0f 1f 00 nopl (%rax) + 66342730: 48 89 d1 mov %rdx,%rcx + 66342733: e8 38 fe ff ff callq 66342570 <_ValidateImageBase.part.0> + 66342738: 85 c0 test %eax,%eax + 6634273a: 74 e9 je 66342725 <__mingw_GetSectionCount+0x15> + 6634273c: 48 63 42 3c movslq 0x3c(%rdx),%rax + 66342740: 44 0f b7 44 10 06 movzwl 0x6(%rax,%rdx,1),%r8d + 66342746: 44 89 c0 mov %r8d,%eax + 66342749: 48 83 c4 28 add $0x28,%rsp + 6634274d: c3 retq + 6634274e: 66 90 xchg %ax,%ax + +0000000066342750 <_FindPESectionExec>: + 66342750: 48 83 ec 28 sub $0x28,%rsp + 66342754: 4c 8b 05 95 1a 00 00 mov 0x1a95(%rip),%r8 # 663441f0 <.refptr.__image_base__> + 6634275b: 66 41 81 38 4d 5a cmpw $0x5a4d,(%r8) + 66342761: 48 89 ca mov %rcx,%rdx + 66342764: 75 52 jne 663427b8 <_FindPESectionExec+0x68> + 66342766: 4c 89 c1 mov %r8,%rcx + 66342769: e8 02 fe ff ff callq 66342570 <_ValidateImageBase.part.0> + 6634276e: 85 c0 test %eax,%eax + 66342770: 74 46 je 663427b8 <_FindPESectionExec+0x68> + 66342772: 49 63 48 3c movslq 0x3c(%r8),%rcx + 66342776: 4c 01 c1 add %r8,%rcx + 66342779: 0f b7 41 14 movzwl 0x14(%rcx),%eax + 6634277d: 48 8d 44 01 18 lea 0x18(%rcx,%rax,1),%rax + 66342782: 0f b7 49 06 movzwl 0x6(%rcx),%ecx + 66342786: 85 c9 test %ecx,%ecx + 66342788: 74 2e je 663427b8 <_FindPESectionExec+0x68> + 6634278a: 83 e9 01 sub $0x1,%ecx + 6634278d: 48 8d 0c 89 lea (%rcx,%rcx,4),%rcx + 66342791: 48 8d 4c c8 28 lea 0x28(%rax,%rcx,8),%rcx + 66342796: 66 2e 0f 1f 84 00 00 nopw %cs:0x0(%rax,%rax,1) + 6634279d: 00 00 00 + 663427a0: f6 40 27 20 testb $0x20,0x27(%rax) + 663427a4: 74 09 je 663427af <_FindPESectionExec+0x5f> + 663427a6: 48 85 d2 test %rdx,%rdx + 663427a9: 74 0f je 663427ba <_FindPESectionExec+0x6a> + 663427ab: 48 83 ea 01 sub $0x1,%rdx + 663427af: 48 83 c0 28 add $0x28,%rax + 663427b3: 48 39 c8 cmp %rcx,%rax + 663427b6: 75 e8 jne 663427a0 <_FindPESectionExec+0x50> + 663427b8: 31 c0 xor %eax,%eax + 663427ba: 48 83 c4 28 add $0x28,%rsp + 663427be: c3 retq + 663427bf: 90 nop + +00000000663427c0 <_GetPEImageBase>: + 663427c0: 48 83 ec 28 sub $0x28,%rsp + 663427c4: 48 8b 15 25 1a 00 00 mov 0x1a25(%rip),%rdx # 663441f0 <.refptr.__image_base__> + 663427cb: 66 81 3a 4d 5a cmpw $0x5a4d,(%rdx) + 663427d0: 75 1e jne 663427f0 <_GetPEImageBase+0x30> + 663427d2: 48 89 d1 mov %rdx,%rcx + 663427d5: e8 96 fd ff ff callq 66342570 <_ValidateImageBase.part.0> + 663427da: 85 c0 test %eax,%eax + 663427dc: b8 00 00 00 00 mov $0x0,%eax + 663427e1: 48 0f 45 c2 cmovne %rdx,%rax + 663427e5: 48 83 c4 28 add $0x28,%rsp + 663427e9: c3 retq + 663427ea: 66 0f 1f 44 00 00 nopw 0x0(%rax,%rax,1) + 663427f0: 31 c0 xor %eax,%eax + 663427f2: 48 83 c4 28 add $0x28,%rsp + 663427f6: c3 retq + 663427f7: 66 0f 1f 84 00 00 00 nopw 0x0(%rax,%rax,1) + 663427fe: 00 00 + +0000000066342800 <_IsNonwritableInCurrentImage>: + 66342800: 48 83 ec 28 sub $0x28,%rsp + 66342804: 4c 8b 05 e5 19 00 00 mov 0x19e5(%rip),%r8 # 663441f0 <.refptr.__image_base__> + 6634280b: 31 c0 xor %eax,%eax + 6634280d: 66 41 81 38 4d 5a cmpw $0x5a4d,(%r8) + 66342813: 48 89 ca mov %rcx,%rdx + 66342816: 74 08 je 66342820 <_IsNonwritableInCurrentImage+0x20> + 66342818: 48 83 c4 28 add $0x28,%rsp + 6634281c: c3 retq + 6634281d: 0f 1f 00 nopl (%rax) + 66342820: 4c 89 c1 mov %r8,%rcx + 66342823: e8 48 fd ff ff callq 66342570 <_ValidateImageBase.part.0> + 66342828: 85 c0 test %eax,%eax + 6634282a: 74 ec je 66342818 <_IsNonwritableInCurrentImage+0x18> + 6634282c: 49 63 40 3c movslq 0x3c(%r8),%rax + 66342830: 48 89 d1 mov %rdx,%rcx + 66342833: 4c 29 c1 sub %r8,%rcx + 66342836: 49 01 c0 add %rax,%r8 + 66342839: 41 0f b7 50 06 movzwl 0x6(%r8),%edx + 6634283e: 41 0f b7 40 14 movzwl 0x14(%r8),%eax + 66342843: 85 d2 test %edx,%edx + 66342845: 49 8d 44 00 18 lea 0x18(%r8,%rax,1),%rax + 6634284a: 74 31 je 6634287d <_IsNonwritableInCurrentImage+0x7d> + 6634284c: 83 ea 01 sub $0x1,%edx + 6634284f: 48 8d 14 92 lea (%rdx,%rdx,4),%rdx + 66342853: 4c 8d 4c d0 28 lea 0x28(%rax,%rdx,8),%r9 + 66342858: 0f 1f 84 00 00 00 00 nopl 0x0(%rax,%rax,1) + 6634285f: 00 + 66342860: 44 8b 40 0c mov 0xc(%rax),%r8d + 66342864: 4c 39 c1 cmp %r8,%rcx + 66342867: 4c 89 c2 mov %r8,%rdx + 6634286a: 72 08 jb 66342874 <_IsNonwritableInCurrentImage+0x74> + 6634286c: 03 50 08 add 0x8(%rax),%edx + 6634286f: 48 39 d1 cmp %rdx,%rcx + 66342872: 72 10 jb 66342884 <_IsNonwritableInCurrentImage+0x84> + 66342874: 48 83 c0 28 add $0x28,%rax + 66342878: 4c 39 c8 cmp %r9,%rax + 6634287b: 75 e3 jne 66342860 <_IsNonwritableInCurrentImage+0x60> + 6634287d: 31 c0 xor %eax,%eax + 6634287f: 48 83 c4 28 add $0x28,%rsp + 66342883: c3 retq + 66342884: 8b 40 24 mov 0x24(%rax),%eax + 66342887: f7 d0 not %eax + 66342889: c1 e8 1f shr $0x1f,%eax + 6634288c: 48 83 c4 28 add $0x28,%rsp + 66342890: c3 retq + 66342891: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1) + 66342896: 66 2e 0f 1f 84 00 00 nopw %cs:0x0(%rax,%rax,1) + 6634289d: 00 00 00 + +00000000663428a0 <__mingw_enum_import_library_names>: + 663428a0: 48 83 ec 28 sub $0x28,%rsp + 663428a4: 4c 8b 1d 45 19 00 00 mov 0x1945(%rip),%r11 # 663441f0 <.refptr.__image_base__> + 663428ab: 66 41 81 3b 4d 5a cmpw $0x5a4d,(%r11) + 663428b1: 41 89 c9 mov %ecx,%r9d + 663428b4: 75 58 jne 6634290e <__mingw_enum_import_library_names+0x6e> + 663428b6: 4c 89 d9 mov %r11,%rcx + 663428b9: e8 b2 fc ff ff callq 66342570 <_ValidateImageBase.part.0> + 663428be: 85 c0 test %eax,%eax + 663428c0: 74 4c je 6634290e <__mingw_enum_import_library_names+0x6e> + 663428c2: 49 63 43 3c movslq 0x3c(%r11),%rax + 663428c6: 4c 01 d8 add %r11,%rax + 663428c9: 8b 90 90 00 00 00 mov 0x90(%rax),%edx + 663428cf: 85 d2 test %edx,%edx + 663428d1: 74 3b je 6634290e <__mingw_enum_import_library_names+0x6e> + 663428d3: 0f b7 48 14 movzwl 0x14(%rax),%ecx + 663428d7: 48 8d 4c 08 18 lea 0x18(%rax,%rcx,1),%rcx + 663428dc: 0f b7 40 06 movzwl 0x6(%rax),%eax + 663428e0: 85 c0 test %eax,%eax + 663428e2: 74 2a je 6634290e <__mingw_enum_import_library_names+0x6e> + 663428e4: 83 e8 01 sub $0x1,%eax + 663428e7: 48 8d 04 80 lea (%rax,%rax,4),%rax + 663428eb: 48 8d 44 c1 28 lea 0x28(%rcx,%rax,8),%rax + 663428f0: 44 8b 51 0c mov 0xc(%rcx),%r10d + 663428f4: 4c 39 d2 cmp %r10,%rdx + 663428f7: 4d 89 d0 mov %r10,%r8 + 663428fa: 72 09 jb 66342905 <__mingw_enum_import_library_names+0x65> + 663428fc: 44 03 41 08 add 0x8(%rcx),%r8d + 66342900: 4c 39 c2 cmp %r8,%rdx + 66342903: 72 10 jb 66342915 <__mingw_enum_import_library_names+0x75> + 66342905: 48 83 c1 28 add $0x28,%rcx + 66342909: 48 39 c1 cmp %rax,%rcx + 6634290c: 75 e2 jne 663428f0 <__mingw_enum_import_library_names+0x50> + 6634290e: 31 c0 xor %eax,%eax + 66342910: 48 83 c4 28 add $0x28,%rsp + 66342914: c3 retq + 66342915: 4c 01 da add %r11,%rdx + 66342918: 75 0e jne 66342928 <__mingw_enum_import_library_names+0x88> + 6634291a: eb f2 jmp 6634290e <__mingw_enum_import_library_names+0x6e> + 6634291c: 0f 1f 40 00 nopl 0x0(%rax) + 66342920: 41 83 e9 01 sub $0x1,%r9d + 66342924: 48 83 c2 14 add $0x14,%rdx + 66342928: 8b 4a 04 mov 0x4(%rdx),%ecx + 6634292b: 85 c9 test %ecx,%ecx + 6634292d: 75 07 jne 66342936 <__mingw_enum_import_library_names+0x96> + 6634292f: 8b 42 0c mov 0xc(%rdx),%eax + 66342932: 85 c0 test %eax,%eax + 66342934: 74 d8 je 6634290e <__mingw_enum_import_library_names+0x6e> + 66342936: 45 85 c9 test %r9d,%r9d + 66342939: 7f e5 jg 66342920 <__mingw_enum_import_library_names+0x80> + 6634293b: 8b 42 0c mov 0xc(%rdx),%eax + 6634293e: 4c 01 d8 add %r11,%rax + 66342941: 48 83 c4 28 add $0x28,%rsp + 66342945: c3 retq + 66342946: 90 nop + 66342947: 90 nop + 66342948: 90 nop + 66342949: 90 nop + 6634294a: 90 nop + 6634294b: 90 nop + 6634294c: 90 nop + 6634294d: 90 nop + 6634294e: 90 nop + 6634294f: 90 nop + +0000000066342950 <_fpreset>: + 66342950: db e3 fninit + 66342952: c3 retq + 66342953: 90 nop + 66342954: 90 nop + 66342955: 90 nop + 66342956: 90 nop + 66342957: 90 nop + 66342958: 90 nop + 66342959: 90 nop + 6634295a: 90 nop + 6634295b: 90 nop + 6634295c: 90 nop + 6634295d: 90 nop + 6634295e: 90 nop + 6634295f: 90 nop + +0000000066342960 <___chkstk_ms>: + 66342960: 51 push %rcx + 66342961: 50 push %rax + 66342962: 48 3d 00 10 00 00 cmp $0x1000,%rax + 66342968: 48 8d 4c 24 18 lea 0x18(%rsp),%rcx + 6634296d: 72 19 jb 66342988 <___chkstk_ms+0x28> + 6634296f: 48 81 e9 00 10 00 00 sub $0x1000,%rcx + 66342976: 48 83 09 00 orq $0x0,(%rcx) + 6634297a: 48 2d 00 10 00 00 sub $0x1000,%rax + 66342980: 48 3d 00 10 00 00 cmp $0x1000,%rax + 66342986: 77 e7 ja 6634296f <___chkstk_ms+0xf> + 66342988: 48 29 c1 sub %rax,%rcx + 6634298b: 48 83 09 00 orq $0x0,(%rcx) + 6634298f: 58 pop %rax + 66342990: 59 pop %rcx + 66342991: c3 retq + 66342992: 90 nop + 66342993: 90 nop + 66342994: 90 nop + 66342995: 90 nop + 66342996: 90 nop + 66342997: 90 nop + 66342998: 90 nop + 66342999: 90 nop + 6634299a: 90 nop + 6634299b: 90 nop + 6634299c: 90 nop + 6634299d: 90 nop + 6634299e: 90 nop + 6634299f: 90 nop + +00000000663429a0 : + 663429a0: b8 01 00 00 00 mov $0x1,%eax + 663429a5: c3 retq + 663429a6: 90 nop + 663429a7: 90 nop + 663429a8: 90 nop + 663429a9: 90 nop + 663429aa: 90 nop + 663429ab: 90 nop + 663429ac: 90 nop + 663429ad: 90 nop + 663429ae: 90 nop + 663429af: 90 nop + +00000000663429b0 : + 663429b0: b8 01 00 00 00 mov $0x1,%eax + 663429b5: c3 retq + 663429b6: 90 nop + 663429b7: 90 nop + 663429b8: 90 nop + 663429b9: 90 nop + 663429ba: 90 nop + 663429bb: 90 nop + 663429bc: 90 nop + 663429bd: 90 nop + 663429be: 90 nop + 663429bf: 90 nop + +00000000663429c0 : + 663429c0: ff 25 c6 68 00 00 jmpq *0x68c6(%rip) # 6634928c <__imp_vfprintf> + 663429c6: 90 nop + 663429c7: 90 nop + +00000000663429c8 : + 663429c8: ff 25 b6 68 00 00 jmpq *0x68b6(%rip) # 66349284 <__imp_strncmp> + 663429ce: 90 nop + 663429cf: 90 nop + +00000000663429d0 : + 663429d0: ff 25 a6 68 00 00 jmpq *0x68a6(%rip) # 6634927c <__imp_strlen> + 663429d6: 90 nop + 663429d7: 90 nop + +00000000663429d8 : + 663429d8: ff 25 96 68 00 00 jmpq *0x6896(%rip) # 66349274 <__imp_signal> + 663429de: 90 nop + 663429df: 90 nop + +00000000663429e0 : + 663429e0: ff 25 7e 68 00 00 jmpq *0x687e(%rip) # 66349264 <__imp_fwrite> + 663429e6: 90 nop + 663429e7: 90 nop + +00000000663429e8 : + 663429e8: ff 25 6e 68 00 00 jmpq *0x686e(%rip) # 6634925c <__imp_free> + 663429ee: 90 nop + 663429ef: 90 nop + +00000000663429f0 : + 663429f0: ff 25 5e 68 00 00 jmpq *0x685e(%rip) # 66349254 <__imp_calloc> + 663429f6: 90 nop + 663429f7: 90 nop + +00000000663429f8 : + 663429f8: ff 25 4e 68 00 00 jmpq *0x684e(%rip) # 6634924c <__imp_abort> + 663429fe: 90 nop + 663429ff: 90 nop + +0000000066342a00 <_initterm>: + 66342a00: ff 25 2e 68 00 00 jmpq *0x682e(%rip) # 66349234 <__imp__initterm> + 66342a06: 90 nop + 66342a07: 90 nop + +0000000066342a08 <_amsg_exit>: + 66342a08: ff 25 1e 68 00 00 jmpq *0x681e(%rip) # 6634922c <__imp__amsg_exit> + 66342a0e: 90 nop + 66342a0f: 90 nop + +0000000066342a10 <_initialize_onexit_table>: + 66342a10: 48 85 c9 test %rcx,%rcx + 66342a13: 74 1a je 66342a2f <_initialize_onexit_table+0x1f> + 66342a15: 31 c0 xor %eax,%eax + 66342a17: 48 c7 41 10 00 00 00 movq $0x0,0x10(%rcx) + 66342a1e: 00 + 66342a1f: 48 c7 41 08 00 00 00 movq $0x0,0x8(%rcx) + 66342a26: 00 + 66342a27: 48 c7 01 00 00 00 00 movq $0x0,(%rcx) + 66342a2e: c3 retq + 66342a2f: b8 ff ff ff ff mov $0xffffffff,%eax + 66342a34: c3 retq + 66342a35: 90 nop + 66342a36: 66 2e 0f 1f 84 00 00 nopw %cs:0x0(%rax,%rax,1) + 66342a3d: 00 00 00 + +0000000066342a40 <_register_onexit_function>: + 66342a40: 55 push %rbp + 66342a41: 57 push %rdi + 66342a42: 56 push %rsi + 66342a43: 53 push %rbx + 66342a44: 48 83 ec 28 sub $0x28,%rsp + 66342a48: 48 85 c9 test %rcx,%rcx + 66342a4b: 48 89 cb mov %rcx,%rbx + 66342a4e: 48 89 d7 mov %rdx,%rdi + 66342a51: 0f 84 99 00 00 00 je 66342af0 <_register_onexit_function+0xb0> + 66342a57: b9 08 00 00 00 mov $0x8,%ecx + 66342a5c: e8 4f 01 00 00 callq 66342bb0 <_lock> + 66342a61: 48 83 3b 00 cmpq $0x0,(%rbx) + 66342a65: 74 5d je 66342ac4 <_register_onexit_function+0x84> + 66342a67: 48 8b 73 08 mov 0x8(%rbx),%rsi + 66342a6b: 48 8b 43 10 mov 0x10(%rbx),%rax + 66342a6f: 48 39 f0 cmp %rsi,%rax + 66342a72: 74 20 je 66342a94 <_register_onexit_function+0x54> + 66342a74: 48 8d 46 08 lea 0x8(%rsi),%rax + 66342a78: b9 08 00 00 00 mov $0x8,%ecx + 66342a7d: 48 89 43 08 mov %rax,0x8(%rbx) + 66342a81: 48 89 3e mov %rdi,(%rsi) + 66342a84: e8 1f 01 00 00 callq 66342ba8 <_unlock> + 66342a89: 31 c0 xor %eax,%eax + 66342a8b: 48 83 c4 28 add $0x28,%rsp + 66342a8f: 5b pop %rbx + 66342a90: 5e pop %rsi + 66342a91: 5f pop %rdi + 66342a92: 5d pop %rbp + 66342a93: c3 retq + 66342a94: 48 8b 0b mov (%rbx),%rcx + 66342a97: 48 29 ce sub %rcx,%rsi + 66342a9a: 48 89 f0 mov %rsi,%rax + 66342a9d: 48 c1 f8 03 sar $0x3,%rax + 66342aa1: 48 c1 e0 04 shl $0x4,%rax + 66342aa5: 48 89 c2 mov %rax,%rdx + 66342aa8: 48 89 c5 mov %rax,%rbp + 66342aab: e8 f0 00 00 00 callq 66342ba0 + 66342ab0: 48 85 c0 test %rax,%rax + 66342ab3: 74 42 je 66342af7 <_register_onexit_function+0xb7> + 66342ab5: 48 89 03 mov %rax,(%rbx) + 66342ab8: 48 01 c6 add %rax,%rsi + 66342abb: 48 01 e8 add %rbp,%rax + 66342abe: 48 89 43 10 mov %rax,0x10(%rbx) + 66342ac2: eb b0 jmp 66342a74 <_register_onexit_function+0x34> + 66342ac4: ba 08 00 00 00 mov $0x8,%edx + 66342ac9: b9 20 00 00 00 mov $0x20,%ecx + 66342ace: e8 1d ff ff ff callq 663429f0 + 66342ad3: 48 85 c0 test %rax,%rax + 66342ad6: 48 89 c6 mov %rax,%rsi + 66342ad9: 48 89 03 mov %rax,(%rbx) + 66342adc: 74 19 je 66342af7 <_register_onexit_function+0xb7> + 66342ade: 48 89 43 08 mov %rax,0x8(%rbx) + 66342ae2: 48 8d 80 00 01 00 00 lea 0x100(%rax),%rax + 66342ae9: 48 89 43 10 mov %rax,0x10(%rbx) + 66342aed: eb 80 jmp 66342a6f <_register_onexit_function+0x2f> + 66342aef: 90 nop + 66342af0: b8 ff ff ff ff mov $0xffffffff,%eax + 66342af5: eb 94 jmp 66342a8b <_register_onexit_function+0x4b> + 66342af7: b9 08 00 00 00 mov $0x8,%ecx + 66342afc: e8 a7 00 00 00 callq 66342ba8 <_unlock> + 66342b01: b8 ff ff ff ff mov $0xffffffff,%eax + 66342b06: eb 83 jmp 66342a8b <_register_onexit_function+0x4b> + 66342b08: 0f 1f 84 00 00 00 00 nopl 0x0(%rax,%rax,1) + 66342b0f: 00 + +0000000066342b10 <_execute_onexit_table>: + 66342b10: 57 push %rdi + 66342b11: 56 push %rsi + 66342b12: 53 push %rbx + 66342b13: 48 83 ec 20 sub $0x20,%rsp + 66342b17: 48 89 cf mov %rcx,%rdi + 66342b1a: b9 08 00 00 00 mov $0x8,%ecx + 66342b1f: e8 8c 00 00 00 callq 66342bb0 <_lock> + 66342b24: 48 8b 37 mov (%rdi),%rsi + 66342b27: b9 08 00 00 00 mov $0x8,%ecx + 66342b2c: 48 c7 47 10 00 00 00 movq $0x0,0x10(%rdi) + 66342b33: 00 + 66342b34: 48 8b 5f 08 mov 0x8(%rdi),%rbx + 66342b38: 48 c7 07 00 00 00 00 movq $0x0,(%rdi) + 66342b3f: 48 c7 47 08 00 00 00 movq $0x0,0x8(%rdi) + 66342b46: 00 + 66342b47: e8 5c 00 00 00 callq 66342ba8 <_unlock> + 66342b4c: 48 85 f6 test %rsi,%rsi + 66342b4f: 74 24 je 66342b75 <_execute_onexit_table+0x65> + 66342b51: 48 83 eb 08 sub $0x8,%rbx + 66342b55: 48 39 de cmp %rbx,%rsi + 66342b58: 77 13 ja 66342b6d <_execute_onexit_table+0x5d> + 66342b5a: 48 8b 03 mov (%rbx),%rax + 66342b5d: 48 85 c0 test %rax,%rax + 66342b60: 74 ef je 66342b51 <_execute_onexit_table+0x41> + 66342b62: ff d0 callq *%rax + 66342b64: 48 83 eb 08 sub $0x8,%rbx + 66342b68: 48 39 de cmp %rbx,%rsi + 66342b6b: 76 ed jbe 66342b5a <_execute_onexit_table+0x4a> + 66342b6d: 48 89 f1 mov %rsi,%rcx + 66342b70: e8 73 fe ff ff callq 663429e8 + 66342b75: 31 c0 xor %eax,%eax + 66342b77: 48 83 c4 20 add $0x20,%rsp + 66342b7b: 5b pop %rbx + 66342b7c: 5e pop %rsi + 66342b7d: 5f pop %rdi + 66342b7e: c3 retq + 66342b7f: 90 nop + +0000000066342b80 <__acrt_iob_func>: + 66342b80: 53 push %rbx + 66342b81: 48 83 ec 20 sub $0x20,%rsp + 66342b85: 89 cb mov %ecx,%ebx + 66342b87: e8 2c 00 00 00 callq 66342bb8 <__iob_func> + 66342b8c: 89 d9 mov %ebx,%ecx + 66342b8e: 48 8d 14 49 lea (%rcx,%rcx,2),%rdx + 66342b92: 48 c1 e2 04 shl $0x4,%rdx + 66342b96: 48 01 d0 add %rdx,%rax + 66342b99: 48 83 c4 20 add $0x20,%rsp + 66342b9d: 5b pop %rbx + 66342b9e: c3 retq + 66342b9f: 90 nop + +0000000066342ba0 : + 66342ba0: ff 25 c6 66 00 00 jmpq *0x66c6(%rip) # 6634926c <__imp_realloc> + 66342ba6: 90 nop + 66342ba7: 90 nop + +0000000066342ba8 <_unlock>: + 66342ba8: ff 25 96 66 00 00 jmpq *0x6696(%rip) # 66349244 <__imp__unlock> + 66342bae: 90 nop + 66342baf: 90 nop + +0000000066342bb0 <_lock>: + 66342bb0: ff 25 86 66 00 00 jmpq *0x6686(%rip) # 6634923c <__imp__lock> + 66342bb6: 90 nop + 66342bb7: 90 nop + +0000000066342bb8 <__iob_func>: + 66342bb8: ff 25 66 66 00 00 jmpq *0x6666(%rip) # 66349224 <__imp___iob_func> + 66342bbe: 90 nop + 66342bbf: 90 nop + +0000000066342bc0 : + 66342bc0: ff 25 4e 66 00 00 jmpq *0x664e(%rip) # 66349214 <__imp_VirtualQuery> + 66342bc6: 90 nop + 66342bc7: 90 nop + +0000000066342bc8 : + 66342bc8: ff 25 3e 66 00 00 jmpq *0x663e(%rip) # 6634920c <__imp_VirtualProtect> + 66342bce: 90 nop + 66342bcf: 90 nop + +0000000066342bd0 : + 66342bd0: ff 25 2e 66 00 00 jmpq *0x662e(%rip) # 66349204 <__imp_UnhandledExceptionFilter> + 66342bd6: 90 nop + 66342bd7: 90 nop + +0000000066342bd8 : + 66342bd8: ff 25 1e 66 00 00 jmpq *0x661e(%rip) # 663491fc <__imp_TlsGetValue> + 66342bde: 90 nop + 66342bdf: 90 nop + +0000000066342be0 : + 66342be0: ff 25 0e 66 00 00 jmpq *0x660e(%rip) # 663491f4 <__imp_TerminateProcess> + 66342be6: 90 nop + 66342be7: 90 nop + +0000000066342be8 : + 66342be8: ff 25 fe 65 00 00 jmpq *0x65fe(%rip) # 663491ec <__imp_Sleep> + 66342bee: 90 nop + 66342bef: 90 nop + +0000000066342bf0 : + 66342bf0: ff 25 ee 65 00 00 jmpq *0x65ee(%rip) # 663491e4 <__imp_SetUnhandledExceptionFilter> + 66342bf6: 90 nop + 66342bf7: 90 nop + +0000000066342bf8 : + 66342bf8: ff 25 de 65 00 00 jmpq *0x65de(%rip) # 663491dc <__imp_RtlVirtualUnwind> + 66342bfe: 90 nop + 66342bff: 90 nop + +0000000066342c00 : + 66342c00: ff 25 ce 65 00 00 jmpq *0x65ce(%rip) # 663491d4 <__imp_RtlLookupFunctionEntry> + 66342c06: 90 nop + 66342c07: 90 nop + +0000000066342c08 : + 66342c08: ff 25 be 65 00 00 jmpq *0x65be(%rip) # 663491cc <__imp_RtlCaptureContext> + 66342c0e: 90 nop + 66342c0f: 90 nop + +0000000066342c10 : + 66342c10: ff 25 ae 65 00 00 jmpq *0x65ae(%rip) # 663491c4 <__imp_RtlAddFunctionTable> + 66342c16: 90 nop + 66342c17: 90 nop + +0000000066342c18 : + 66342c18: ff 25 9e 65 00 00 jmpq *0x659e(%rip) # 663491bc <__imp_QueryPerformanceCounter> + 66342c1e: 90 nop + 66342c1f: 90 nop + +0000000066342c20 : + 66342c20: ff 25 8e 65 00 00 jmpq *0x658e(%rip) # 663491b4 <__imp_LeaveCriticalSection> + 66342c26: 90 nop + 66342c27: 90 nop + +0000000066342c28 : + 66342c28: ff 25 7e 65 00 00 jmpq *0x657e(%rip) # 663491ac <__imp_InitializeCriticalSection> + 66342c2e: 90 nop + 66342c2f: 90 nop + +0000000066342c30 : + 66342c30: ff 25 6e 65 00 00 jmpq *0x656e(%rip) # 663491a4 <__imp_GetTickCount> + 66342c36: 90 nop + 66342c37: 90 nop + +0000000066342c38 : + 66342c38: ff 25 5e 65 00 00 jmpq *0x655e(%rip) # 6634919c <__imp_GetSystemTimeAsFileTime> + 66342c3e: 90 nop + 66342c3f: 90 nop + +0000000066342c40 : + 66342c40: ff 25 4e 65 00 00 jmpq *0x654e(%rip) # 66349194 <__imp_GetLastError> + 66342c46: 90 nop + 66342c47: 90 nop + +0000000066342c48 : + 66342c48: ff 25 3e 65 00 00 jmpq *0x653e(%rip) # 6634918c <__imp_GetCurrentThreadId> + 66342c4e: 90 nop + 66342c4f: 90 nop + +0000000066342c50 : + 66342c50: ff 25 2e 65 00 00 jmpq *0x652e(%rip) # 66349184 <__imp_GetCurrentProcessId> + 66342c56: 90 nop + 66342c57: 90 nop + +0000000066342c58 : + 66342c58: ff 25 1e 65 00 00 jmpq *0x651e(%rip) # 6634917c <__imp_GetCurrentProcess> + 66342c5e: 90 nop + 66342c5f: 90 nop + +0000000066342c60 : + 66342c60: ff 25 0e 65 00 00 jmpq *0x650e(%rip) # 66349174 <__imp_EnterCriticalSection> + 66342c66: 90 nop + 66342c67: 90 nop + +0000000066342c68 : + 66342c68: ff 25 fe 64 00 00 jmpq *0x64fe(%rip) # 6634916c <__IAT_start__> + 66342c6e: 90 nop + 66342c6f: 90 nop + +0000000066342c70 <__report_error>: + 66342c70: 56 push %rsi + 66342c71: 53 push %rbx + 66342c72: 48 83 ec 38 sub $0x38,%rsp + 66342c76: 48 8d 44 24 58 lea 0x58(%rsp),%rax + 66342c7b: 48 89 cb mov %rcx,%rbx + 66342c7e: b9 02 00 00 00 mov $0x2,%ecx + 66342c83: 48 89 54 24 58 mov %rdx,0x58(%rsp) + 66342c88: 4c 89 44 24 60 mov %r8,0x60(%rsp) + 66342c8d: 4c 89 4c 24 68 mov %r9,0x68(%rsp) + 66342c92: 48 89 44 24 28 mov %rax,0x28(%rsp) + 66342c97: e8 e4 fe ff ff callq 66342b80 <__acrt_iob_func> + 66342c9c: 41 b8 1b 00 00 00 mov $0x1b,%r8d + 66342ca2: ba 01 00 00 00 mov $0x1,%edx + 66342ca7: 48 8d 0d d2 13 00 00 lea 0x13d2(%rip),%rcx # 66344080 <.rdata> + 66342cae: 49 89 c1 mov %rax,%r9 + 66342cb1: e8 2a fd ff ff callq 663429e0 + 66342cb6: 48 8b 74 24 28 mov 0x28(%rsp),%rsi + 66342cbb: b9 02 00 00 00 mov $0x2,%ecx + 66342cc0: e8 bb fe ff ff callq 66342b80 <__acrt_iob_func> + 66342cc5: 48 89 da mov %rbx,%rdx + 66342cc8: 48 89 c1 mov %rax,%rcx + 66342ccb: 49 89 f0 mov %rsi,%r8 + 66342cce: e8 ed fc ff ff callq 663429c0 + 66342cd3: e8 20 fd ff ff callq 663429f8 + 66342cd8: 90 nop + 66342cd9: 90 nop + 66342cda: 90 nop + 66342cdb: 90 nop + 66342cdc: 90 nop + 66342cdd: 90 nop + 66342cde: 90 nop + 66342cdf: 90 nop + +0000000066342ce0 : + 66342ce0: 48 83 ec 18 sub $0x18,%rsp + 66342ce4: 0f ae 5c 24 0c stmxcsr 0xc(%rsp) + 66342ce9: 81 4c 24 0c 40 80 00 orl $0x8040,0xc(%rsp) + 66342cf0: 00 + 66342cf1: 0f ae 54 24 0c ldmxcsr 0xc(%rsp) + 66342cf6: 48 83 c4 18 add $0x18,%rsp + 66342cfa: c3 retq + 66342cfb: 90 nop + 66342cfc: 90 nop + 66342cfd: 90 nop + 66342cfe: 90 nop + 66342cff: 90 nop + +0000000066342d00 : + 66342d00: e9 8b e6 ff ff jmpq 66341390 <__gcc_register_frame> + 66342d05: 90 nop + 66342d06: 90 nop + 66342d07: 90 nop + 66342d08: 90 nop + 66342d09: 90 nop + 66342d0a: 90 nop + 66342d0b: 90 nop + 66342d0c: 90 nop + 66342d0d: 90 nop + 66342d0e: 90 nop + 66342d0f: 90 nop + +0000000066342d10 <__CTOR_LIST__>: + 66342d10: ff (bad) + 66342d11: ff (bad) + 66342d12: ff (bad) + 66342d13: ff (bad) + 66342d14: ff (bad) + 66342d15: ff (bad) + 66342d16: ff (bad) + 66342d17: ff .byte 0xff + +0000000066342d18 <.ctors>: + 66342d18: e0 2c loopne 66342d46 <__DTOR_LIST__+0x16> + 66342d1a: 34 66 xor $0x66,%al + 66342d1c: 00 00 add %al,(%rax) + ... + +0000000066342d20 <.ctors.65535>: + 66342d20: 00 2d 34 66 00 00 add %ch,0x6634(%rip) # 6634935a <.idata$6+0x14> + ... + +0000000066342d30 <__DTOR_LIST__>: + 66342d30: ff (bad) + 66342d31: ff (bad) + 66342d32: ff (bad) + 66342d33: ff (bad) + 66342d34: ff (bad) + 66342d35: ff (bad) + 66342d36: ff (bad) + 66342d37: ff 00 incl (%rax) + 66342d39: 00 00 add %al,(%rax) + 66342d3b: 00 00 add %al,(%rax) + 66342d3d: 00 00 add %al,(%rax) + ... diff --git a/sim/gencfuncs.lua b/sim/gencfuncs.lua new file mode 100644 index 0000000..4de9554 --- /dev/null +++ b/sim/gencfuncs.lua @@ -0,0 +1,24 @@ + +local luatoc_subs = { + {"Gate%.setportstate%(gate, *", "setport%("}, + {"Gate%.getportstate%(gate, *", "getport%("}, + {"~=", "!="}, + {"!= *0", ""}, + {"elseif", "els2 if"}, + {"if", "if("}, + {"else", "} else {"}, + {"els2", "else"}, + {"end", "}"}, + {"then", ") {"}, + {"return function(gate)", "GATEFUNC"}, +} +local function luatoc(f) + for i, sub in ipairs(luatoc_subs) do + f = f:gsub(sub[1], sub[2]) + end + return f +end + +local function tstogatedata(ts) + +end diff --git a/sim/network.lua b/sim/network.lua index a70ed54..e11e69a 100644 --- a/sim/network.lua +++ b/sim/network.lua @@ -117,7 +117,7 @@ function network_update() if value < 0 or value > 999999 then value = 0 end - if value<=0.001 then value = 0.0001 end + if value<=0.001 then value = 0.001 end OPT_TICK_TIME = value elseif option == "FX_UPDATES" then OPT_FX_UPDATES = toboolean(value)