Function at 0x427764
Capabilities:
Get geographical location
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffff28
push ebx
push esi
push edi
xor ebx, ebx
mov dword [ebp - 0xc], ebx
mov dword [ebp - 8], ecx
mov dword [ebp - 4], edx
mov edi, eax
mov esi, dword [ebp + 0xc]
lea eax, [ebp + 0x44]
call fcn.00404f84
lea eax, [ebp + 0x40]
call fcn.00404f84
lea eax, [ebp + 0x3c]
call fcn.00404f84
mov ebx, 0x4a04c0
xor eax, eax
push ebp
push 0x428d7e
push dword fs:[eax]
mov dword fs:[eax], esp
cmp dword [ebx], 0
jne 0x428d59
mov al, byte [0x428d90]
call fcn.00420d9c
mov eax, dword [0x4a0448]
call fcn.00404aa8
push eax
call sub.kernel32.dll_LoadLibraryA
mov dword [ebx], eax
cmp dword [ebx], 0
jne 0x4277da
call fcn.0040e040
push 0x428d94
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a389c], eax
push 0x428da8
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a38a0], eax
push 0x428dbc
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a38a4], eax
push 0x428dd4
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a38ac], eax
push 0x428dec
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a38b0], eax
push 0x428e04
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a38b4], eax
push 0x428e1c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a38bc], eax
push 0x428e30
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a38c0], eax
push 0x428e44
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a38c4], eax
push 0x428e5c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a38c8], eax
push 0x428e74
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a38cc], eax
push 0x428e8c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a38d0], eax
push 0x428ea8
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a38d4], eax
push 0x428ec4
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a38d8], eax
push 0x428ee0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a38dc], eax
push 0x428efc
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a38f8], eax
push 0x428f18
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a38fc], eax
push 0x428f34
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3904], eax
push 0x428f54
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3908], eax
push 0x428f74
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a390c], eax
push 0x428f94
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3914], eax
push 0x428fb4
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3918], eax
push 0x428fd4
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a391c], eax
mov eax, dword [0x4a38a4]
mov dword [0x4a38a8], eax
mov eax, dword [0x4a38b4]
mov dword [0x4a38b8], eax
mov eax, dword [0x4a390c]
mov dword [0x4a3910], eax
mov eax, dword [0x4a391c]
mov dword [0x4a3920], eax
mov eax, dword [0x4a38fc]
mov dword [0x4a3900], eax
mov eax, dword [0x4a38dc]
mov dword [0x4a38e0], eax
mov eax, dword [0x4a38d8]
mov dword [0x4a38e4], eax
mov dword [0x4a38e8], 0x4276a0
mov dword [0x4a38ec], 0x4276a0
mov eax, dword [0x4a38d4]
mov dword [0x4a38f0], eax
mov eax, dword [0x4a38d0]
mov dword [0x4a38f4], eax
push 0x428ff4
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a394c], eax
push 0x42900c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3950], eax
push 0x429020
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3954], eax
push 0x429034
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3958], eax
push 0x429048
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a395c], eax
push 0x429060
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3960], eax
push 0x429078
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3964], eax
push 0x429090
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3968], eax
push 0x4290a4
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a396c], eax
push 0x4290bc
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3970], eax
push 0x4290d4
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3974], eax
push 0x4290ec
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3978], eax
push 0x429104
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a397c], eax
push 0x42911c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3980], eax
push 0x429134
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3984], eax
push 0x42914c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3944], eax
push 0x42915c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3940], eax
push 0x429170
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3948], eax
push 0x429180
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a392c], eax
push 0x42919c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3930], eax
push 0x4291b4
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3934], eax
push 0x4291cc
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3938], eax
push 0x4291e4
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a393c], eax
push 0x429200
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3988], eax
push 0x429218
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a398c], eax
push 0x42923c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3990], eax
push 0x429260
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3994], eax
push 0x429288
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3998], eax
push 0x4292b0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a399c], eax
push 0x4292d4
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a39a0], eax
push 0x4292e8
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a39a4], eax
push 0x4292f8
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a39a8], eax
push 0x429310
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a39ac], eax
push 0x429320
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a39b0], eax
push 0x429330
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a39b4], eax
push 0x429354
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a39b8], eax
push 0x429368
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a39bc], eax
push 0x42938c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a39c0], eax
push 0x4293a0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a39c4], eax
push 0x4293b4
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a39c8], eax
push 0x4293c4
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a39cc], eax
push 0x4293d4
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a39d0], eax
push 0x4293e8
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a39d4], eax
push 0x4293f8
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a39d8], eax
push 0x429418
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a39dc], eax
push 0x429428
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3924], eax
push 0x429448
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3928], eax
push 0x429470
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a39e0], eax
push 0x429484
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a39e4], eax
push 0x42949c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a39e8], eax
push 0x4294bc
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a39ec], eax
push 0x4294e0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a39f0], eax
push 0x429504
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a39f4], eax
push 0x42952c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a39f8], eax
push 0x429550
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a39fc], eax
push 0x429578
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3a00], eax
push 0x42959c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3a04], eax
push 0x4295c0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3a08], eax
push 0x4295dc
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3a0c], eax
push 0x4295fc
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3a10], eax
push 0x429614
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3a14], eax
push 0x42962c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3a18], eax
push 0x429644
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3a1c], eax
push 0x42965c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3a20], eax
push 0x429678
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3a24], eax
push 0x429690
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3a28], eax
push 0x4296ac
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3a2c], eax
push 0x4296c8
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3a30], eax
push 0x4296e4
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3a34], eax
push 0x429700
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3a38], eax
push 0x429720
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3a3c], eax
push 0x429738
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3a40], eax
push 0x429750
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3a44], eax
push 0x42976c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3a48], eax
push 0x429788
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3a4c], eax
push 0x4297a8
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3a50], eax
push 0x4297c8
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3a54], eax
push 0x4297e0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3a58], eax
push 0x4297fc
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3a5c], eax
push 0x429818
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3a60], eax
push 0x429834
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3a64], eax
push 0x429850
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3a68], eax
push 0x429878
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3a6c], eax
push 0x42989c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3a70], eax
push 0x4298b4
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3a74], eax
push 0x4298d0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3a78], eax
push 0x4298ec
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3a7c], eax
push 0x429900
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3a80], eax
push 0x429918
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3a84], eax
push 0x429934
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3a88], eax
push 0x42994c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3a8c], eax
push 0x42995c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3a90], eax
push 0x429970
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3a94], eax
push 0x429984
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3a98], eax
push 0x42999c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3a9c], eax
push 0x4299b8
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3aa0], eax
push 0x4299d0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3aa4], eax
push 0x4299e8
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3aa8], eax
push 0x429a08
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3aac], eax
push 0x429a24
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3ab0], eax
push 0x429a48
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3ab4], eax
push 0x429a68
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3ab8], eax
push 0x429a88
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3abc], eax
push 0x429aa4
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3ac0], eax
push 0x429ab8
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3ac4], eax
push 0x429ae0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3ac8], eax
push 0x429b00
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3acc], eax
push 0x429b14
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3ad0], eax
push 0x429b24
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3ad4], eax
push 0x429b44
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3ad8], eax
push 0x429b6c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3adc], eax
push 0x429b90
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3ae0], eax
push 0x429ba8
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3ae4], eax
push 0x429bc0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3ae8], eax
push 0x429bd4
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3aec], eax
push 0x429bdc
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3af0], eax
push 0x429c00
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3af4], eax
push 0x429c28
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3af8], eax
push 0x429c40
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3afc], eax
push 0x429c58
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3b00], eax
push 0x429c6c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3b04], eax
push 0x429c80
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3b08], eax
push 0x429c98
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3b0c], eax
push 0x429cb4
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3b10], eax
push 0x429cd4
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3b14], eax
push 0x429cf4
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3b18], eax
push 0x429d10
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3b1c], eax
push 0x429d2c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3b20], eax
push 0x429d44
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4a3b24], eax
cmp dword [0x4a389c], 0
je 0x428a74
cmp dword [0x4a38a0], 0
je 0x428a74
cmp dword [0x4a38a4], 0
je 0x428a74
cmp dword [0x4a38ac], 0
je 0x428a74
cmp dword [0x4a38b0], 0
je 0x428a74
cmp dword [0x4a38b4], 0
je 0x428a74
cmp dword [0x4a38bc], 0
je 0x428a74
cmp dword [0x4a38c0], 0
je 0x428a74
cmp dword [0x4a38c4], 0
je 0x428a74
cmp dword [0x4a38c8], 0
je 0x428a74
cmp dword [0x4a38cc], 0
je 0x428a74
cmp dword [0x4a38d0], 0
je 0x428a74
cmp dword [0x4a38d4], 0
je 0x428a74
cmp dword [0x4a38d8], 0
je 0x428a74
cmp dword [0x4a38dc], 0
je 0x428a74
cmp dword [0x4a38f8], 0
je 0x428a74
cmp dword [0x4a38fc], 0
je 0x428a74
cmp dword [0x4a3904], 0
je 0x428a74
cmp dword [0x4a3908], 0
je 0x428a74
cmp dword [0x4a390c], 0
je 0x428a74
cmp dword [0x4a3914], 0
je 0x428a74
cmp dword [0x4a3918], 0
je 0x428a74
cmp dword [0x4a391c], 0
je 0x428a74
cmp dword [0x4a394c], 0
je 0x428a74
cmp dword [0x4a3950], 0
je 0x428a74
cmp dword [0x4a3954], 0
je 0x428a74
cmp dword [0x4a3958], 0
je 0x428a74
cmp dword [0x4a395c], 0
je 0x428a74
cmp dword [0x4a3960], 0
je 0x428a74
cmp dword [0x4a3964], 0
je 0x428a74
cmp dword [0x4a3968], 0
je 0x428a74
cmp dword [0x4a396c], 0
je 0x428a74
cmp dword [0x4a3970], 0
je 0x428a74
cmp dword [0x4a3974], 0
je 0x428a74
cmp dword [0x4a3978], 0
je 0x428a74
cmp dword [0x4a397c], 0
je 0x428a74
cmp dword [0x4a3980], 0
je 0x428a74
cmp dword [0x4a3984], 0
je 0x428a74
cmp dword [0x4a3944], 0
je 0x428a74
cmp dword [0x4a3940], 0
je 0x428a74
cmp dword [0x4a3948], 0
je 0x428a74
cmp dword [0x4a392c], 0
je 0x428a74
cmp dword [0x4a3930], 0
je 0x428a74
cmp dword [0x4a3934], 0
je 0x428a74
cmp dword [0x4a3938], 0
je 0x428a74
cmp dword [0x4a393c], 0
je 0x428a74
cmp dword [0x4a3988], 0
je 0x428a74
cmp dword [0x4a398c], 0
je 0x428a74
cmp dword [0x4a3990], 0
je 0x428a74
cmp dword [0x4a3994], 0
je 0x428a74
cmp dword [0x4a3998], 0
je 0x428a74
cmp dword [0x4a399c], 0
je 0x428a74
cmp dword [0x4a39a0], 0
je 0x428a74
cmp dword [0x4a39a4], 0
je 0x428a74
cmp dword [0x4a39a8], 0
je 0x428a74
cmp dword [0x4a39ac], 0
je 0x428a74
cmp dword [0x4a39b0], 0
je 0x428a74
cmp dword [0x4a39b4], 0
je 0x428a74
cmp dword [0x4a39b8], 0
je 0x428a74
cmp dword [0x4a39bc], 0
je 0x428a74
cmp dword [0x4a39c0], 0
je 0x428a74
cmp dword [0x4a39c4], 0
je 0x428a74
cmp dword [0x4a39c8], 0
je 0x428a74
cmp dword [0x4a39cc], 0
je 0x428a74
cmp dword [0x4a39d0], 0
je 0x428a74
cmp dword [0x4a39d4], 0
je 0x428a74
cmp dword [0x4a39d8], 0
je 0x428a74
cmp dword [0x4a39dc], 0
je 0x428a74
cmp dword [0x4a3924], 0
je 0x428a74
cmp dword [0x4a3928], 0
je 0x428a74
cmp dword [0x4a39e0], 0
je 0x428a74
cmp dword [0x4a39e4], 0
je 0x428a74
cmp dword [0x4a39e8], 0
je 0x428a74
cmp dword [0x4a39ec], 0
je 0x428a74
cmp dword [0x4a39f0], 0
je 0x428a74
cmp dword [0x4a39f4], 0
je 0x428a74
cmp dword [0x4a39f8], 0
je 0x428a74
cmp dword [0x4a39fc], 0
je 0x428a74
cmp dword [0x4a3a00], 0
je 0x428a74
cmp dword [0x4a3a04], 0
je 0x428a74
cmp dword [0x4a3a08], 0
je 0x428a74
cmp dword [0x4a3a0c], 0
je 0x428a74
cmp dword [0x4a3a10], 0
je 0x428a74
cmp dword [0x4a3a14], 0
je 0x428a74
cmp dword [0x4a3a18], 0
je 0x428a74
cmp dword [0x4a3a1c], 0
je 0x428a74
cmp dword [0x4a3a20], 0
je 0x428a74
cmp dword [0x4a3a24], 0
je 0x428a74
cmp dword [0x4a3a28], 0
je 0x428a74
cmp dword [0x4a3a2c], 0
je 0x428a74
cmp dword [0x4a3a30], 0
je 0x428a74
cmp dword [0x4a3a34], 0
je 0x428a74
cmp dword [0x4a3a38], 0
je 0x428a74
cmp dword [0x4a3a3c], 0
je 0x428a74
cmp dword [0x4a3a40], 0
je 0x428a74
cmp dword [0x4a3a44], 0
je 0x428a74
cmp dword [0x4a3a48], 0
je 0x428a74
cmp dword [0x4a3a4c], 0
je 0x428a74
cmp dword [0x4a3a50], 0
je 0x428a74
cmp dword [0x4a3a54], 0
je 0x428a74
cmp dword [0x4a3a58], 0
je 0x428a74
cmp dword [0x4a3a5c], 0
je 0x428a74
cmp dword [0x4a3a60], 0
je 0x428a74
cmp dword [0x4a3a64], 0
je 0x428a74
cmp dword [0x4a3a68], 0
je 0x428a74
cmp dword [0x4a3a6c], 0
je 0x428a74
cmp dword [0x4a3a70], 0
je 0x428a74
cmp dword [0x4a3a74], 0
je 0x428a74
cmp dword [0x4a3a78], 0
je 0x428a74
cmp dword [0x4a3a7c], 0
je 0x428a74
cmp dword [0x4a3a80], 0
je 0x428a74
cmp dword [0x4a3a84], 0
je 0x428a74
cmp dword [0x4a3a88], 0
je 0x428a74
cmp dword [0x4a3a8c], 0
je 0x428a74
cmp dword [0x4a3a90], 0
je 0x428a74
cmp dword [0x4a3a94], 0
je 0x428a74
cmp dword [0x4a3a98], 0
je 0x428a74
cmp dword [0x4a3a9c], 0
je 0x428a74
cmp dword [0x4a3aa0], 0
je 0x428a74
cmp dword [0x4a3aa4], 0
je 0x428a74
cmp dword [0x4a3aa8], 0
je 0x428a74
cmp dword [0x4a3aac], 0
je 0x428a74
cmp dword [0x4a3ab0], 0
je 0x428a74
cmp dword [0x4a3ab4], 0
je 0x428a74
cmp dword [0x4a3ab8], 0
je 0x428a74
cmp dword [0x4a3abc], 0
je 0x428a74
cmp dword [0x4a3ac0], 0
je 0x428a74
mov ecx, 0x429d6c
mov dl, 1
mov eax, dword [0x427544]
call fcn.0040ca64
call fcn.00403f48
lea eax, [ebp - 0xcc]
xor ecx, ecx
mov edx, 0xc0
call fcn.004031b4
mov dword [ebp - 0xcc], 0xc0
xor eax, eax
mov al, byte [ebp + 0x38]
mov dword [ebp - 0xc8], eax
xor eax, eax
mov al, byte [ebp + 0x34]
mov dword [ebp - 0xc4], eax
xor eax, eax
mov dword [ebp - 0xb4], eax
xor eax, eax
mov al, byte [ebp + 8]
mov dword [ebp - 0xb0], eax
lea edx, [ebp - 0xd8]
mov eax, edi
call fcn.00429dc4
mov eax, dword [ebp - 0xd8]
mov dword [ebp - 0xa8], eax
mov eax, dword [ebp - 0xd4]
mov dword [ebp - 0xa4], eax
mov eax, dword [ebp - 0xd0]
mov dword [ebp - 0xa0], eax
lea edx, [ebp - 0xd8]
mov eax, dword [ebp - 4]
call fcn.00429dc4
mov eax, dword [ebp - 0xd8]
mov dword [ebp - 0x9c], eax
mov eax, dword [ebp - 0xd4]
mov dword [ebp - 0x98], eax
mov eax, dword [ebp - 0xd0]
mov dword [ebp - 0x94], eax
xor eax, eax
mov al, byte [ebp + 0x1c]
mov dword [ebp - 0x90], eax
lea edx, [ebp - 0xd8]
mov eax, dword [ebp + 0x4c]
call fcn.00429dc4
mov eax, dword [ebp - 0xd8]
mov dword [ebp - 0xc0], eax
mov eax, dword [ebp - 0xd4]
mov dword [ebp - 0xbc], eax
mov eax, dword [ebp - 0xd0]
mov dword [ebp - 0xb8], eax
xor eax, eax
mov al, byte [ebp + 0x30]
mov dword [ebp - 0xac], eax
lea edx, [ebp - 0xd8]
mov eax, dword [ebp - 8]
call fcn.00429dc4
mov eax, dword [ebp - 0xd8]
mov dword [ebp - 0x88], eax
mov eax, dword [ebp - 0xd4]
mov dword [ebp - 0x84], eax
mov eax, dword [ebp - 0xd0]
mov dword [ebp - 0x80], eax
lea edx, [ebp - 0xd8]
mov eax, dword [ebp + 0x58]
call fcn.00429dc4
mov eax, dword [ebp - 0xd8]
mov dword [ebp - 0x7c], eax
mov eax, dword [ebp - 0xd4]
mov dword [ebp - 0x78], eax
mov eax, dword [ebp - 0xd0]
mov dword [ebp - 0x74], eax
lea edx, [ebp - 0xd8]
mov eax, dword [ebp + 0x54]
call fcn.00429dc4
mov eax, dword [ebp - 0xd8]
mov dword [ebp - 0x70], eax
mov eax, dword [ebp - 0xd4]
mov dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0xd0]
mov dword [ebp - 0x68], eax
lea edx, [ebp - 0xd8]
mov eax, dword [ebp + 0x50]
call fcn.00429dc4
mov eax, dword [ebp - 0xd8]
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0xd4]
mov dword [ebp - 0x60], eax
mov eax, dword [ebp - 0xd0]
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp + 0x48]
mov dword [ebp - 0x58], eax
lea edx, [ebp - 0xd8]
mov eax, dword [ebp + 0x44]
call fcn.00429dc4
mov eax, dword [ebp - 0xd8]
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0xd4]
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0xd0]
mov dword [ebp - 0x4c], eax
lea edx, [ebp - 0xd8]
mov eax, dword [ebp + 0x40]
call fcn.00429dc4
mov eax, dword [ebp - 0xd8]
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0xd4]
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0xd0]
mov dword [ebp - 0x40], eax
lea edx, [ebp - 0xd8]
mov eax, dword [ebp + 0x3c]
call fcn.00429dc4
mov eax, dword [ebp - 0xd8]
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0xd4]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0xd0]
mov dword [ebp - 0x34], eax
xor eax, eax
mov al, byte [ebp + 0x2c]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp + 0x28]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp + 0x24]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp + 0x20]
mov dword [ebp - 0x24], eax
xor eax, eax
mov al, byte [ebp + 0x18]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x1c], eax
lea edx, [ebp - 0xd8]
mov eax, dword [ebp + 0x10]
call fcn.00429dc4
mov eax, dword [ebp - 0xd8]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0xd4]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0xd0]
mov dword [ebp - 0x10], eax
mov dl, 1
mov eax, dword [0x4275b4]
call fcn.0042f714
mov edx, eax
test edx, edx
je 0x428d0b
sub edx, 0xffffffec
lea eax, [ebp - 0xc]
call fcn.00405fcc
push esi
mov eax, dword [ebp - 0xc]
call fcn.00429eb4
push eax
push 0x4a3668
call dword [0x4a3940]
add esp, 0xc
test eax, eax
jl 0x428d33
xor ebx, ebx
jmp 0x428d5b
push esi
mov eax, dword [ebp - 0xc]
call fcn.00429eb4
push eax
lea eax, [ebp - 0xcc]
push eax
push 0x4a3668
call dword [0x4a3944]
add esp, 0x10
mov byte [0x4a04c4], 1
mov bl, 1
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x428d85
lea eax, [ebp - 0xc]
call fcn.00405fb4
lea eax, [ebp + 0x3c]
mov edx, 3
call fcn.00404d0c
ret