Function at 0x43b4a0
Capabilities:
Check internet connectivity via wininet
Contain obfuscated stackstrings

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x516ae7
mov eax, dword fs:[0]
push eax
push ebx
mov eax, 0x1a78
call fcn.0050fde0
mov eax, dword [0x573054]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [ebp - 0xce0], esi
xor edi, edi
mov dword [ebp - 0xcd0], edi
call fcn.00448a70
mov cl, al
mov byte [ebp - 0xcc9], cl
mov byte [ebp - 0xcca], cl
test cl, cl
jne 0x43b580
push 3
xor eax, eax
mov dword [ebp - 0x974], edi
mov dword [ebp - 0x970], edi
lea ecx, [ebp - 0x984]
push 0x538158
mov dword [ebp - 0x974], edi
mov dword [ebp - 0x970], 7
mov word [ebp - 0x984], ax
call fcn.004033d0
push edi
lea eax, [ebp - 0x984]
mov dword [ebp - 4], edi
push edi
push eax
call fcn.004291c0
mov ecx, eax
call fcn.004296b0
lea ecx, [ebp - 0x984]
mov dword [ebp - 4], 1
call fcn.00403370
mov dword [ebp - 4], 0xffffffff
mov cl, byte [ebp - 0xcc9]
nop word [eax + eax]
mov al, byte [esi + 0xa8]
test al, al
jne 0x43cbee
nop
test cl, cl
jne 0x43b632
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
lea eax, [ebp - 0x94c]
mov dword [ebp - 0x94c], 0
push eax
call dword [sym.imp.SensApi.dll_IsNetworkAlive]
test eax, eax
je 0x43b5c2
mov al, 1
jmp 0x43b5cd
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
setne al
push dword [ebp - 0x94c]
mov byte [ebp - 0xcc9], al
push 0x539600
call fcn.00445860
mov cl, byte [ebp - 0xcc9]
add esp, 8
test cl, cl
je 0x43b624
push 0
lea eax, [ebp - 0x94c]
push eax
call dword [sym.imp.WININET.dll_InternetGetConnectedState]
push dword [ebp - 0x94c]
cmp eax, 1
push 0x5395e0
sete al
mov byte [ebp - 0xcc9], al
call fcn.00445860
mov cl, byte [ebp - 0xcc9]
add esp, 8
mov al, byte [esi + 0xa8]
test al, al
je 0x43b590
test al, al
jne 0x43cbee
cmp byte [ebp - 0xcca], al
jne 0x43b6d4
test cl, cl
je 0x43b6d4
push 3
xor eax, eax
mov dword [ebp - 0xd44], 0
mov dword [ebp - 0xd40], 0
lea ecx, [ebp - 0xd54]
push 0x538ab4
mov dword [ebp - 0xd44], 0
mov dword [ebp - 0xd40], 7
mov word [ebp - 0xd54], ax
call fcn.004033d0
push 0
lea eax, [ebp - 0xd54]
mov dword [ebp - 4], 5
push 1
push eax
call fcn.004291c0
mov ecx, eax
call fcn.00429690
lea ecx, [ebp - 0xd54]
mov dword [ebp - 4], 6
call fcn.00403370
mov al, byte [ebp - 0xcc9]
mov dword [ebp - 4], 0xffffffff
mov byte [ebp - 0xcca], al
mov ecx, dword [esi + 0x4c]
lea eax, [esi + 0x4c]
mov dword [ebp - 0xcdc], eax
mov dword [ebp - 0xcd8], ecx
mov eax, dword [ecx + 0x170]
lea esi, [ecx + 0x74]
mov dword [ebp - 0x94c], eax
test esi, esi
je 0x43b71a
mov eax, dword [esi]
mov dword [ebp - 0xcd8], ecx
test eax, eax
je 0x43b71a
push eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [ebp - 0xcdc]
mov ecx, dword [eax]
mov dword [ebp - 0xcd8], ecx
cmp byte [ecx + 0x49], 0
je 0x43b78a
mov byte [ecx + 0x48], 1
mov dword [ecx + 0x16c], 0
mov dword [ecx + 0x170], 0
mov dword [ebp - 4], 0xa
lea ecx, [ecx + 0x164]
mov edi, dword [ecx]
push dword [edi + 4]
call fcn.0043ef10
mov ecx, dword [ebp - 0xcd8]
mov eax, dword [ecx + 0x164]
mov dword [eax + 4], edi
mov eax, dword [ecx + 0x164]
mov dword [eax], edi
mov eax, dword [ecx + 0x164]
mov dword [eax + 8], edi
mov edi, dword [ebp - 0xcd0]
mov dword [ecx + 0x168], 0
mov dword [ebp - 4], 0xffffffff
mov byte [ecx + 0x49], 0
mov dword [ebp - 4], 0xb
test esi, esi
je 0x43b7a2
mov eax, dword [esi]
test eax, eax
je 0x43b7a2
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, dword [ebp - 0xcdc]
lea ecx, [ebp - 0xb38]
mov esi, dword [ebp - 0xce0]
mov dword [ebp - 4], 0xffffffff
mov eax, dword [eax]
mov dword [eax + 0x16c], esi
call fcn.00439750
lea eax, [ebp - 0xb38]
mov dword [ebp - 4], 0xc
mov ecx, dword [ebp - 0x94c]
push eax
push ecx
mov ecx, esi
call fcn.0043ac00
test al, al
je 0x43cb41
mov eax, dword [0x5769d0]
test al, 1
jne 0x43b81b
or eax, 1
mov dword [0x5769d0], eax
mov byte [ebp - 4], 0xd
call fcn.00414130
push 0x52e4a0
mov byte [ebp - 4], 0xd
call fcn.0050f847
add esp, 4
mov byte [ebp - 4], 0xc
push 0x576acc
lea ecx, [ebp - 0x12c8]
call fcn.00415390
or edi, 1
mov dword [ebp - 0xcd0], edi
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x12c8]
mov esi, dword [ebp - 0x1234]
mov dword [ebp - 0xcec], esi
mov byte [ebp - 4], 0xc
call fcn.00407a70
mov eax, dword [0x5769d0]
test al, 1
jne 0x43b882
or eax, 1
mov dword [0x5769d0], eax
mov byte [ebp - 4], 0x10
call fcn.00414130
push 0x52e4a0
mov byte [ebp - 4], 0x10
call fcn.0050f847
add esp, 4
mov byte [ebp - 4], 0xc
push 0x576acc
lea ecx, [ebp - 0x1440]
call fcn.00415390
or edi, 2
mov dword [ebp - 0xcd0], edi
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x1440]
mov eax, dword [ebp - 0x12cc]
mov dword [ebp - 0xcf4], eax
mov byte [ebp - 4], 0xc
call fcn.00407a70
push 3
xor eax, eax
mov dword [ebp - 0xd74], 0
mov dword [ebp - 0xd70], 0
lea ecx, [ebp - 0xd84]
push 0x538abc
mov dword [ebp - 0xd74], 0
mov dword [ebp - 0xd70], 7
mov word [ebp - 0xd84], ax
call fcn.004033d0
mov eax, esi
mov byte [ebp - 4], 0x13
cdq
push edx
push eax
lea eax, [ebp - 0xd84]
push eax
call fcn.004291c0
mov ecx, eax
call fcn.004296b0
lea ecx, [ebp - 0xd84]
mov byte [ebp - 4], 0x14
call fcn.00403370
mov byte [ebp - 4], 0xc
mov ecx, dword [ebp - 0xb38]
call fcn.00439920
mov byte [ebp - 0xccc], al
xor eax, eax
push 3
push 0x537c2c
cmp esi, 1
jne 0x43b9a4
mov dword [ebp - 0xdbc], eax
lea ecx, [ebp - 0xdcc]
mov dword [ebp - 0xdb8], eax
mov dword [ebp - 0xdbc], eax
mov dword [ebp - 0xdb8], 7
mov word [ebp - 0xdcc], ax
call fcn.004033d0
push 0
lea eax, [ebp - 0xdcc]
mov byte [ebp - 4], 0x18
push esi
push eax
call fcn.004291c0
mov ecx, eax
call fcn.004296b0
lea ecx, [ebp - 0xdcc]
mov byte [ebp - 4], 0x19
call fcn.00403370
jmp 0x43ba08
mov dword [ebp - 0xd5c], 0
lea ecx, [ebp - 0xd6c]
mov dword [ebp - 0xd58], 0
mov dword [ebp - 0xd5c], 0
mov dword [ebp - 0xd58], 7
mov word [ebp - 0xd6c], ax
call fcn.004033d0
push 0
lea eax, [ebp - 0xd6c]
mov byte [ebp - 4], 0x1d
push 0
push eax
call fcn.004291c0
mov ecx, eax
call fcn.004296b0
lea ecx, [ebp - 0xd6c]
mov byte [ebp - 4], 0x1e
call fcn.00403370
mov byte [ebp - 4], 0xc
mov eax, dword [0x576650]
test al, 1
jne 0x43ba7f
or eax, 1
mov dword [0x576650], eax
mov byte [ebp - 4], 0x23
xor eax, eax
mov dword [0x576668], 0
mov dword [0x57666c], 0
mov dword [0x576668], 0
mov dword [0x57666c], 7
mov word [0x576658], ax
mov ecx, 0x576678
mov byte [ebp - 4], 0x24
call fcn.0040cab0
mov byte [ebp - 4], 0x25
mov byte [0x576670], 0
push 0x52e490
mov byte [ebp - 4], 0x22
call fcn.0050f847
add esp, 4
mov byte [ebp - 4], 0xc
mov al, byte [ebp - 0xccc]
mov byte [ebp - 0xccb], 1
test al, al
je 0x43c751
cmp dword [ebp - 0xb30], 5
je 0x43c751
mov eax, dword [0x5769d0]
xorps xmm0, xmm0
movq qword [ebp - 0x990], xmm0
mov dword [ebp - 0x988], 0
test al, 1
jne 0x43bae5
or eax, 1
mov dword [0x5769d0], eax
mov byte [ebp - 4], 0x27
call fcn.00414130
push 0x52e4a0
mov byte [ebp - 4], 0x27
call fcn.0050f847
add esp, 4
mov byte [ebp - 4], 0xc
push 0x576acc
lea ecx, [ebp - 0x1150]
call fcn.00415390
or edi, 4
mov dword [ebp - 0xcd0], edi
mov byte [ebp - 4], 0x29
mov eax, dword [ebp - 0xfe8]
mov dword [ebp - 0x990], 0
mov dword [ebp - 0xcd8], eax
mov dword [ebp - 0x990], eax
mov eax, dword [ebp - 0xfe4]
mov dword [ebp - 0x98c], 0
mov dword [ebp - 0x98c], eax
mov dword [ebp - 0xce8], eax
mov eax, dword [ebp - 0xfe0]
mov dword [ebp - 0x988], 0
mov dword [ebp - 0x988], eax
mov dword [ebp - 0xfe8], 0
mov dword [ebp - 0xfe4], 0
mov dword [ebp - 0xfe0], 0
lea ecx, [ebp - 0x1150]
mov byte [ebp - 4], 0x2b
call fcn.00407a70
mov eax, dword [ebp - 0xce8]
xor esi, esi
sub eax, dword [ebp - 0xcd8]
sar eax, 2
mov dword [ebp - 0xce4], esi
test eax, eax
je 0x43c729
nop dword [eax]
mov eax, dword [ebp - 0xcd8]
mov esi, dword [eax + esi*4]
mov dword [ebp - 0xcdc], esi
test esi, esi
jne 0x43bbd0
mov eax, dword [ebp - 0xb30]
cmp eax, 1
jl 0x43c39b
cmp eax, 4
jle 0x43c729
jmp 0x43c39b
cmp esi, 2
ja 0x43c39b
xor eax, eax
mov dword [ebp - 0x9b0], 0
push eax
mov dword [ebp - 0x9ac], 0
lea ecx, [ebp - 0x9c0]
push 0x530ed0
mov dword [ebp - 0x9b0], 0
mov dword [ebp - 0x9ac], 7
mov word [ebp - 0x9c0], ax
call fcn.004033d0
mov byte [ebp - 4], 0x2c
lea ecx, [ebp - 0x984]
xor eax, eax
mov dword [ebp - 0x974], 0
push eax
mov dword [ebp - 0x970], 0
push 0x530ed0
mov dword [ebp - 0x974], 0
mov dword [ebp - 0x970], 7
mov word [ebp - 0x984], ax
call fcn.004033d0
mov byte [ebp - 4], 0x2d
lea ecx, [ebp - 0x964]
push 0
mov dword [ebp - 0x954], 0
mov dword [ebp - 0x950], 0
push 0x535498
mov dword [ebp - 0x954], 0
mov dword [ebp - 0x950], 0xf
mov byte [ebp - 0x964], 0
call fcn.0040bd90
mov byte [ebp - 4], 0x2e
cmp esi, 1
jne 0x43bdfe
cmp dword [ebp - 0xcec], esi
je 0x43bd37
mov byte [ebp - 4], 0x2f
mov edx, dword [ebp - 0x950]
cmp edx, 0x10
jb 0x43bcf9
mov ecx, dword [ebp - 0x964]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x43bcef
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43cbe8
push edx
push ecx
call fcn.0050f85c
add esp, 8
mov dword [ebp - 0x954], 0
mov dword [ebp - 0x950], 0xf
mov byte [ebp - 0x964], 0
lea ecx, [ebp - 0x984]
mov byte [ebp - 4], 0x33
call fcn.00403370
lea ecx, [ebp - 0x9c0]
mov byte [ebp - 4], 0x37
call fcn.00403370
jmp 0x43c397
call fcn.00408cb0
add eax, 0xf4
lea ecx, [ebp - 0x15b8]
push eax
call fcn.00415390
or edi, 8
mov dword [ebp - 0xcd0], edi
lea eax, [ebp - 0x1520]
mov byte [ebp - 4], 0x3b
push eax
lea ecx, [ebp - 0x9c0]
call fcn.004032b0
lea ecx, [ebp - 0x15b8]
mov byte [ebp - 4], 0x2e
call fcn.00407a70
call fcn.00408cb0
add eax, 0xf4
lea ecx, [ebp - 0x1730]
push eax
call fcn.00415390
or edi, 0x10
mov dword [ebp - 0xcd0], edi
lea eax, [ebp - 0x1680]
mov byte [ebp - 4], 0x3c
push eax
lea ecx, [ebp - 0x984]
call fcn.004032b0
lea ecx, [ebp - 0x1730]
mov byte [ebp - 4], 0x2e
call fcn.00407a70
push 0x537c2c
lea ecx, [ebp - 0xe44]
call fcn.004032f0
push 0
lea eax, [ebp - 0xe44]
mov byte [ebp - 4], 0x3d
push 4
push eax
call fcn.004291c0
mov ecx, eax
call fcn.004296b0
lea ecx, [ebp - 0xe44]
mov byte [ebp - 4], 0x3e
call fcn.00403370
jmp 0x43c1d6
cmp esi, 2
jne 0x43c1da
cmp dword [ebp - 0xcf4], 1
je 0x43be8c
mov byte [ebp - 4], 0x42
mov edx, dword [ebp - 0x950]
cmp edx, 0x10
jb 0x43be4e
mov ecx, dword [ebp - 0x964]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x43be44
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43cbe8
push edx
push ecx
call fcn.0050f85c
add esp, 8
mov dword [ebp - 0x954], 0
mov dword [ebp - 0x950], 0xf
mov byte [ebp - 0x964], 0
lea ecx, [ebp - 0x984]
mov byte [ebp - 4], 0x46
call fcn.00403370
lea ecx, [ebp - 0x9c0]
mov byte [ebp - 4], 0x4a
call fcn.00403370
jmp 0x43c397
push 0x576678
lea ecx, [ebp - 0x1a88]
call fcn.0040d950
or edi, 0x20
mov dword [ebp - 0xcd0], edi
lea eax, [ebp - 0x1a08]
mov byte [ebp - 4], 0x4e
push eax
lea ecx, [ebp - 0x9d8]
call fcn.00408b40
lea ecx, [ebp - 0x1a88]
mov byte [ebp - 4], 0x50
call fcn.0040d3a0
push 0x530ed0
lea ecx, [ebp - 0xa48]
call fcn.004032f0
mov byte [ebp - 4], 0x51
cmp dword [ebp - 0x9c8], 0
je 0x43bf25
push 0xfde9
lea eax, [ebp - 0x9d8]
push eax
lea eax, [ebp - 0xe5c]
push eax
call fcn.004b6150
add esp, 0xc
push eax
lea ecx, [ebp - 0xa48]
mov byte [ebp - 4], 0x52
call fcn.004032b0
lea ecx, [ebp - 0xe5c]
mov byte [ebp - 4], 0x53
call fcn.00403370
mov byte [ebp - 4], 0x51
call fcn.00408cb0
add eax, 0xf4
lea ecx, [ebp - 0xfd8]
push eax
call fcn.00415390
or edi, 0x40
mov dword [ebp - 0xcd0], edi
mov byte [ebp - 4], 0x59
xor eax, eax
movups xmm0, xmmword [ebp - 0xf10]
mov dword [ebp - 0xa20], 0
mov dword [ebp - 0xa1c], 0
movups xmmword [ebp - 0xa30], xmm0
mov word [ebp - 0xf10], ax
movq xmm0, qword [ebp - 0xf00]
movq qword [ebp - 0xa20], xmm0
mov dword [ebp - 0xf00], 0
mov dword [ebp - 0xefc], 7
mov byte [ebp - 4], 0x5a
movups xmm0, xmmword [ebp - 0xef8]
mov dword [ebp - 0xa08], eax
mov dword [ebp - 0xa04], eax
movups xmmword [ebp - 0xa18], xmm0
mov word [ebp - 0xef8], ax
movq xmm0, qword [ebp - 0xee8]
mov dword [ebp - 0xee8], eax
movq qword [ebp - 0xa08], xmm0
mov dword [ebp - 0xee4], 7
mov byte [ebp - 4], 0x58
mov eax, dword [ebp - 0xee0]
mov dword [ebp - 0xa00], eax
mov byte [ebp - 4], 0x5b
xor eax, eax
movups xmm0, xmmword [ebp - 0xedc]
mov word [ebp - 0xedc], ax
mov dword [ebp - 0x9ec], 0
movups xmmword [ebp - 0x9fc], xmm0
mov dword [ebp - 0x9e8], 0
movq xmm0, qword [ebp - 0xecc]
movq qword [ebp - 0x9ec], xmm0
mov dword [ebp - 0xecc], 0
mov dword [ebp - 0xec8], 7
mov byte [ebp - 4], 0x58
mov eax, dword [ebp - 0xec4]
mov dword [ebp - 0x9e4], eax
mov eax, dword [ebp - 0xec0]
mov dword [ebp - 0x9e0], eax
mov eax, dword [ebp - 0xebc]
mov dword [ebp - 0x9dc], eax
lea ecx, [ebp - 0xfd8]
mov byte [ebp - 4], 0x5d
call fcn.00407a70
push 0x800
lea eax, [ebp - 0x948]
mov ecx, 0x4b
mov esi, str._adsense_list_:__seat_id_:_d__size_:1__display_list_:__display_id_:__s___ad_form_:_d____device_:_device_type_:1__user_:_uid_:__s___test_:_d
lea edi, [ebp - 0x148]
push 0
rep movsd dword es:[edi], dword [esi]
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0xa48]
cmp dword [ebp - 0xa34], 8
lea eax, [ebp - 0x9fc]
cmovae ecx, dword [ebp - 0xa48]
push dword [ebp - 0x9dc]
cmp dword [ebp - 0x9e8], 8
push ecx
push dword [ebp - 0x9e4]
cmovae eax, dword [ebp - 0x9fc]
push eax
push dword [ebp - 0xa00]
lea eax, [ebp - 0x148]
push eax
lea eax, [ebp - 0x948]
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0x1c
lea eax, [ebp - 0x964]
push eax
lea eax, [ebp - 0x948]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov edx, eax
lea ecx, [ebp - 0x948]
call fcn.004b5f00
add esp, 4
lea eax, [ebp - 0xa30]
cmp dword [ebp - 0xa1c], 8
lea ecx, [ebp - 0x9c0]
cmovae eax, dword [ebp - 0xa30]
push dword [ebp - 0xa20]
push eax
call fcn.004033d0
lea ecx, [ebp - 0x9fc]
mov byte [ebp - 4], 0x5f
call fcn.00403370
lea ecx, [ebp - 0xa18]
mov byte [ebp - 4], 0x63
call fcn.00403370
lea ecx, [ebp - 0xa30]
mov byte [ebp - 4], 0x67
call fcn.00403370
lea ecx, [ebp - 0xa48]
mov byte [ebp - 4], 0x6b
call fcn.00403370
mov byte [ebp - 4], 0x6f
mov edx, dword [ebp - 0x9c4]
cmp edx, 0x10
jb 0x43c1b5
mov ecx, dword [ebp - 0x9d8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x43c1ab
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43cbe8
push edx
push ecx
call fcn.0050f85c
add esp, 8
mov dword [ebp - 0x9c8], 0
mov dword [ebp - 0x9c4], 0xf
mov byte [ebp - 0x9d8], 0
mov esi, dword [ebp - 0xcdc]
mov byte [ebp - 4], 0x2e
lea eax, [ebp - 0x964]
push eax
lea eax, [ebp - 0x984]
push eax
lea eax, [ebp - 0x9c0]
push eax
push esi
call fcn.00438f20
mov ecx, eax
call fcn.0040a520
xorps xmm0, xmm0
mov byte [ebp - 0xcd1], al
movlpd qword [ebp - 0x96c], xmm0
call fcn.00438f20
mov edi, dword [eax]
test edi, edi
jne 0x43c21c
xor esi, esi
jmp 0x43c24a
mov esi, dword [edi + 0x84]
mov dword [ebp - 0x96c], 0
mov dword [ebp - 0x968], 0
test esi, esi
je 0x43c244
lock inc dword [esi + 4]
mov esi, dword [edi + 0x84]
mov edi, dword [edi + 0x80]
mov dword [ebp - 0x96c], edi
mov dword [ebp - 0x968], esi
cmp byte [ebp - 0xcd1], 0
mov byte [ebp - 4], 0x73
je 0x43c2f1
test edi, edi
setne al
test al, al
je 0x43c2f1
lea ecx, [ebp - 0xbd0]
call fcn.004037a0
mov byte [ebp - 4], 0x74
lea ecx, [ebp - 0xbd0]
mov eax, dword [edi]
push ecx
mov ecx, edi
mov eax, dword [eax + 0x18]
call eax
test al, al
jne 0x43c3c4
cmp dword [ebp - 0xcdc], 1
jne 0x43c2e2
push 0x537c2c
lea ecx, [ebp - 0xe14]
call fcn.004032f0
push 0
lea eax, [ebp - 0xe14]
mov byte [ebp - 4], 0x97
push 6
push eax
call fcn.004291c0
mov ecx, eax
call fcn.004296b0
lea ecx, [ebp - 0xe14]
mov byte [ebp - 4], 0x98
call fcn.00403370
mov byte [ebp - 4], 0x74
lea ecx, [ebp - 0xbd0]
mov byte [ebp - 4], 0x73
call fcn.00403f00
mov byte [ebp - 4], 0x9c
test esi, esi
je 0x43c31a
or eax, 0xffffffff
lock xadd dword [esi + 4], eax
jne 0x43c31a
mov eax, dword [esi]
mov ecx, esi
call dword [eax]
or eax, 0xffffffff
lock xadd dword [esi + 8], eax
jne 0x43c31a
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 4]
mov byte [ebp - 4], 0x9d
mov edx, dword [ebp - 0x950]
cmp edx, 0x10
jb 0x43c358
mov ecx, dword [ebp - 0x964]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x43c34e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43cbe8
push edx
push ecx
call fcn.0050f85c
add esp, 8
mov dword [ebp - 0x954], 0
mov dword [ebp - 0x950], 0xf
mov byte [ebp - 0x964], 0
lea ecx, [ebp - 0x984]
mov byte [ebp - 4], 0xa1
call fcn.00403370
lea ecx, [ebp - 0x9c0]
mov byte [ebp - 4], 0xa5
call fcn.00403370
mov edi, dword [ebp - 0xcd0]
mov byte [ebp - 4], 0x2b
mov eax, dword [ebp - 0xce8]
mov esi, dword [ebp - 0xce4]
sub eax, dword [ebp - 0xcd8]
inc esi
sar eax, 2
mov dword [ebp - 0xce4], esi
cmp esi, eax
jb 0x43bba0
jmp 0x43c729
lea eax, [ebp - 0xcc8]
mov byte [ebp - 0xccb], 0
push eax
call fcn.00408cb0
mov ecx, eax
call fcn.00415230
lea eax, [ebp - 0xb9c]
mov byte [ebp - 4], 0x75
push eax
lea ecx, [ebp - 0xc80]
call fcn.00405920
lea eax, [ebp - 0x96c]
push eax
lea ecx, [ebp - 0xbf4]
call fcn.0040bc10
push 0
push 0x530ed0
lea ecx, [ebp - 0xc58]
mov dword [ebp - 0xcb4], 0
call fcn.004033d0
cmp dword [ebp - 0xcdc], 1
jne 0x43c482
push 0x537c2c
lea ecx, [ebp - 0xe2c]
call fcn.004032f0
push 0
lea eax, [ebp - 0xe2c]
mov byte [ebp - 4], 0x76
push 7
push eax
call fcn.004291c0
mov ecx, eax
call fcn.004296b0
lea ecx, [ebp - 0xe2c]
mov byte [ebp - 4], 0x77
call fcn.00403370
mov byte [ebp - 4], 0x75
mov dword [ebp - 0xcc8], 6
mov dword [ebp - 0xb30], 6
jmp 0x43c615
lea eax, [ebp - 0xb6c]
push eax
lea ecx, [ebp - 0xb50]
call fcn.00405990
mov byte [ebp - 4], 0x7b
lea ecx, [ebp - 0x9a8]
push 0
mov dword [ebp - 0x998], 0
mov dword [ebp - 0x994], 0
push 0x535498
mov dword [ebp - 0x998], 0
mov dword [ebp - 0x994], 0xf
mov byte [ebp - 0x9a8], 0
call fcn.0040bd90
mov byte [ebp - 4], 0x7c
cmp dword [ebp - 0xb40], 0
je 0x43c595
push 0xfde9
lea edx, [ebp - 0xb6c]
lea ecx, [ebp - 0xdfc]
call fcn.004b6660
add esp, 4
push eax
lea ecx, [ebp - 0x9a8]
mov byte [ebp - 4], 0x7d
call fcn.0041d910
mov byte [ebp - 4], 0x7e
mov edx, dword [ebp - 0xde8]
cmp edx, 0x10
jb 0x43c551
mov ecx, dword [ebp - 0xdfc]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x43c547
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43cbe8
push edx
push ecx
call fcn.0050f85c
add esp, 8
mov dword [ebp - 0xdec], 0
mov dword [ebp - 0xde8], 0xf
mov byte [ebp - 0xdfc], 0
mov byte [ebp - 4], 0x7c
lea eax, [ebp - 0x9a8]
cmp dword [ebp - 0x994], 0x10
mov ecx, 0x5766f8
push dword [ebp - 0x998]
cmovae eax, dword [ebp - 0x9a8]
push eax
call fcn.0040bd90
mov dword [ebp - 0xcc8], 7
mov dword [ebp - 0xb30], 7
mov byte [ebp - 4], 0x82
mov edx, dword [ebp - 0x994]
cmp edx, 0x10
jb 0x43c5e7
mov ecx, dword [ebp - 0x9a8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x43c5dd
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43cbe8
push edx
push ecx
call fcn.0050f85c
add esp, 8
mov dword [ebp - 0x998], 0
mov dword [ebp - 0x994], 0xf
mov byte [ebp - 0x9a8], 0
lea ecx, [ebp - 0xb50]
mov byte [ebp - 4], 0x86
call fcn.00403370
mov byte [ebp - 4], 0x75
lea eax, [ebp - 0xb9c]
push eax
lea ecx, [ebp - 0xaf8]
call fcn.00405920
lea eax, [ebp - 0xbb4]
mov byte [ebp - 0xa7c], 1
push eax
lea ecx, [ebp - 0xa64]
mov dword [ebp - 0xac4], 2
mov dword [ebp - 0xac0], 1
call fcn.00405920
call fcn.00408cb0
lea ecx, [ebp - 0xcc8]
push ecx
mov ecx, eax
call fcn.004156d0
lea ecx, [ebp - 0xcc8]
mov byte [ebp - 4], 0x74
call fcn.004143f0
lea ecx, [ebp - 0xbd0]
mov byte [ebp - 4], 0x73
call fcn.00403f00
mov byte [ebp - 4], 0x8a
test esi, esi
je 0x43c6ae
or eax, 0xffffffff
lock xadd dword [esi + 4], eax
jne 0x43c6ae
mov eax, dword [esi]
mov ecx, esi
call dword [eax]
or eax, 0xffffffff
lock xadd dword [esi + 8], eax
jne 0x43c6ae
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 4]
mov byte [ebp - 4], 0x8b
mov edx, dword [ebp - 0x950]
cmp edx, 0x10
jb 0x43c6ec
mov ecx, dword [ebp - 0x964]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x43c6e2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43cbe8
push edx
push ecx
call fcn.0050f85c
add esp, 8
mov dword [ebp - 0x954], 0
mov dword [ebp - 0x950], 0xf
mov byte [ebp - 0x964], 0
lea ecx, [ebp - 0x984]
mov byte [ebp - 4], 0x8f
call fcn.00403370
lea ecx, [ebp - 0x9c0]
mov byte [ebp - 4], 0x93
call fcn.00403370
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x990]
mov byte [ebp - 4], 0xc
call fcn.00408ba0
cmp byte [ebp - 0xccb], 0
je 0x43c8c9
mov esi, dword [ebp - 0xcec]
mov al, byte [ebp - 0xccc]
cmp esi, 1
jne 0x43c8c9
test al, al
je 0x43c858
cmp dword [ebp - 0xb30], 4
jne 0x43c7dc
push 3
xor eax, eax
mov dword [ebp - 0xd2c], 0
mov dword [ebp - 0xd28], 0
lea ecx, [ebp - 0xd3c]
push 0x537c2c
mov dword [ebp - 0xd2c], 0
mov dword [ebp - 0xd28], 7
mov word [ebp - 0xd3c], ax
call fcn.004033d0
push 0
lea eax, [ebp - 0xd3c]
mov byte [ebp - 4], 0xa9
push 2
push eax
call fcn.004291c0
mov ecx, eax
call fcn.004296b0
lea ecx, [ebp - 0xd3c]
mov byte [ebp - 4], 0xaa
call fcn.00403370
mov byte [ebp - 4], 0xc
cmp dword [ebp - 0xb30], 5
jne 0x43c8c9
push 3
xor eax, eax
mov dword [ebp - 0xd8c], 0
mov dword [ebp - 0xd88], 0
lea ecx, [ebp - 0xd9c]
push 0x537c2c
mov dword [ebp - 0xd8c], 0
mov dword [ebp - 0xd88], 7
mov word [ebp - 0xd9c], ax
call fcn.004033d0
push 0
lea eax, [ebp - 0xd9c]
mov byte [ebp - 4], 0xae
push 3
push eax
call fcn.004291c0
mov ecx, eax
call fcn.004296b0
lea ecx, [ebp - 0xd9c]
mov byte [ebp - 4], 0xaf
call fcn.00403370
jmp 0x43c8c5
push 3
xor eax, eax
mov dword [ebp - 0xda4], 0
mov dword [ebp - 0xda0], 0
lea ecx, [ebp - 0xdb4]
push 0x537c2c
mov dword [ebp - 0xda4], 0
mov dword [ebp - 0xda0], 7
mov word [ebp - 0xdb4], ax
call fcn.004033d0
push 0
lea eax, [ebp - 0xdb4]
mov byte [ebp - 4], 0xb3
push 0xc
push eax
call fcn.004291c0
mov ecx, eax
call fcn.004296b0
lea ecx, [ebp - 0xdb4]
mov byte [ebp - 4], 0xb4
call fcn.00403370
mov byte [ebp - 4], 0xc
mov edi, dword [ebp - 0xce0]
mov ecx, dword [ebp - 0xac4]
cmp ecx, 2
mov eax, dword [ebp - 0xb30]
mov dword [edi + 0x70], eax
setne al
mov byte [edi + 0x81], al
mov eax, dword [ebp - 0xac8]
mov dword [edi + 0x6c], ecx
test eax, eax
jg 0x43c8fd
mov eax, dword [edi + 0x88]
mov dword [edi + 0x88], eax
lea ecx, [ebp - 0xde4]
mov dword [edi + 0x8c], eax
mov eax, dword [ebp - 0xa78]
mov dword [edi + 0xa0], eax
mov eax, dword [ebp - 0xa74]
mov dword [edi + 0xa4], eax
mov eax, dword [ebp - 0xb34]
mov dword [edi + 0x68], eax
mov al, byte [ebp - 0xa6b]
mov byte [edi + 0xa9], al
xor eax, eax
push 3
mov dword [ebp - 0xdd4], 0
mov dword [ebp - 0xdd0], 0
push 0x538aac
mov dword [ebp - 0xdd4], 0
mov dword [ebp - 0xdd0], 7
mov word [ebp - 0xde4], ax
call fcn.004033d0
push 0
mov byte [ebp - 4], 0xb8
lea eax, [ebp - 0xde4]
push dword [edi + 0x68]
push eax
call fcn.004291c0
mov ecx, eax
call fcn.004296b0
lea ecx, [ebp - 0xde4]
mov byte [ebp - 4], 0xb9
call fcn.00403370
xor eax, eax
mov byte [ebp - 4], 0xc
push 3
push 0x538910
cmp byte [ebp - 0xabc], al
je 0x43ca13
mov dword [ebp - 0xcfc], eax
lea ecx, [ebp - 0xd0c]
mov dword [ebp - 0xcf8], eax
mov dword [ebp - 0xcfc], eax
mov dword [ebp - 0xcf8], 7
mov word [ebp - 0xd0c], ax
call fcn.004033d0
push 0
lea eax, [ebp - 0xd0c]
mov byte [ebp - 4], 0xbd
push 0
push eax
call fcn.004291c0
mov ecx, eax
call fcn.004296b0
lea ecx, [ebp - 0xd0c]
mov byte [ebp - 4], 0xbe
call fcn.00403370
jmp 0x43ca77
mov dword [ebp - 0xd14], 0
lea ecx, [ebp - 0xd24]
mov dword [ebp - 0xd10], 0
mov dword [ebp - 0xd14], 0
mov dword [ebp - 0xd10], 7
mov word [ebp - 0xd24], ax
call fcn.004033d0
push 0
lea eax, [ebp - 0xd24]
mov byte [ebp - 4], 0xc2
push 0xd
push eax
call fcn.004291c0
mov ecx, eax
call fcn.004296b0
lea ecx, [ebp - 0xd24]
mov byte [ebp - 4], 0xc3
call fcn.00403370
mov byte [ebp - 4], 0xc
mov eax, dword [edi + 0x4c]
inc dword [ebp - 0x94c]
lea esi, [eax + 0x74]
test esi, esi
je 0x43ca9b
mov ecx, dword [esi]
test ecx, ecx
je 0x43ca9b
push ecx
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [edi + 0x4c]
mov ecx, dword [ebp - 0x94c]
mov dword [eax + 0x170], ecx
mov byte [ebp - 4], 0xc7
test esi, esi
je 0x43cabc
mov eax, dword [esi]
test eax, eax
je 0x43cabc
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov byte [ebp - 4], 0xc
mov esi, dword [edi + 0x4c]
add esi, 0x74
mov dword [ebp - 0xcf0], 0
mov dword [ebp - 0xcf0], esi
je 0x43cae5
mov eax, dword [esi]
test eax, eax
je 0x43cae5
push eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea eax, [ebp - 0xb38]
mov byte [ebp - 4], 0xc8
mov ecx, dword [edi + 0x4c]
push eax
call fcn.0043ce80
mov byte [ebp - 4], 0xc9
test esi, esi
je 0x43cb17
mov eax, dword [esi]
test eax, eax
je 0x43cb0d
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov dword [ebp - 0xcf0], 0
lea esi, [edi + 0x4c]
mov byte [ebp - 4], 0xc
test esi, esi
je 0x43cb47
mov ecx, dword [esi]
cmp byte [ecx + 0x49], 0
je 0x43cb31
call fcn.0043d6c0
mov ecx, dword [esi]
mov ecx, dword [ecx + 0x16c]
test ecx, ecx
je 0x43cb47
mov eax, dword [ecx]
call dword [eax]
jmp 0x43cb47
mov edi, dword [ebp - 0xce0]
lea ecx, [ebp - 0xa64]
mov dword [ebp - 4], 0xcb
call fcn.00403370
lea ecx, [ebp - 0xa94]
mov byte [ebp - 4], 0xcf
call fcn.00403370
lea ecx, [ebp - 0xaac]
mov byte [ebp - 4], 0xd3
call fcn.00403370
lea ecx, [ebp - 0xae0]
mov byte [ebp - 4], 0xd7
call fcn.00403370
lea ecx, [ebp - 0xaf8]
mov byte [ebp - 4], 0xdb
call fcn.00403370
lea ecx, [ebp - 0xb10]
mov byte [ebp - 4], 0xdf
call fcn.00403370
lea ecx, [ebp - 0xb28]
mov byte [ebp - 4], 0xe3
call fcn.00403370
mov dword [ebp - 4], 0xffffffff
cmp byte [edi + 0xa8], 0
jne 0x43cbee
mov eax, dword [edi + 0x24]
test eax, eax
je 0x43cbee
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
jne 0x43cbee
mov edi, dword [ebp - 0xcd0]
mov esi, dword [ebp - 0xce0]
jmp 0x43b574
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.0050f48d
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret