Function at 0x42e820
Capabilities:
Create directory
Get common file path
Parse pe header
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
mov eax, dword fs:[0]
push 0x4f4e0e
push eax
mov eax, 0x1a30
mov dword fs:[0], esp
call fcn.004b37e0
push esi
mov eax, ecx
push edi
mov dword [ebp - 0x11c], eax
mov dword [ebp - 4], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 4], 3
push ecx
call fcn.004561d0
sub esp, 0x10
mov edi, 1
mov dword [ebp - 0x10], edi
mov ecx, esp
mov dword [ebp - 0x164], esp
sub esp, 8
mov eax, esp
mov dword [eax], 0
mov dword [eax + 4], 0
call fcn.00456080
add esp, 8
mov byte [ebp - 4], 4
lea eax, [ebp - 0x50]
push eax
call fcn.00430d60
mov esi, eax
xor edx, edx
movzx ecx, byte [edx + esi]
push ecx
call fcn.00459470
mov byte [edx + esi], al
inc edx
cmp edx, 6
jb 0x42e8a5
mov ecx, dword [ebp - 0x11c]
push esi
call fcn.0045c780
mov byte [ebp - 4], 3
mov ecx, eax
call fcn.00455ca0
push 0x104
lea eax, [ebp - 0xa3c]
push 0
push eax
call fcn.004cacb0
add esp, 0xc
lea eax, [ebp - 0xa3c]
push eax
push 0
push 0
push 0x1a
push 0
call dword [sym.imp.SHELL32.dll_SHGetFolderPathA]
lea eax, [ebp + 8]
push eax
lea edx, [ebp - 0xa3c]
lea ecx, [ebp - 0x390]
call fcn.0045c4e0
add esp, 4
mov byte [ebp - 4], 5
lea eax, [ebp - 0x112]
push eax
call fcn.00430d80
mov esi, eax
xor edx, edx
movzx ecx, byte [edx + esi]
push ecx
call fcn.00459470
mov byte [edx + esi], al
inc edx
cmp edx, 0xd
jb 0x42e926
push esi
lea edx, [ebp - 0x390]
lea ecx, [ebp - 0x430]
call fcn.0045c3b0
add esp, 4
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x430]
call fcn.00457e70
push eax
push 0x1000
lea eax, [ebp - 0x1a3c]
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileSectionNamesA]
lea esi, [ebp - 0x1a3c]
mov dword [ebp - 0x16c], esi
nop dword [eax]
mov dword [ebp - 0xb4], 0xf9f0edcf
xor ecx, ecx
mov dword [ebp - 0xb0], 0xfaf3f6
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0xb4]
push eax
call fcn.00459470
mov byte [ebp + ecx - 0xb4], al
inc ecx
cmp ecx, 7
jb 0x42e9a0
push 7
lea eax, [ebp - 0xb4]
push eax
push esi
call fcn.004d62ae
add esp, 0xc
test eax, eax
jne 0x430b7e
push 0x104
push eax
lea eax, [ebp - 0x81c]
push eax
call fcn.004cacb0
add esp, 0xc
mov dword [ebp - 0x49], 0xf7ebfecf
cmp dword [ebp - 0x41c], 0x10
lea edx, [ebp - 0x430]
mov byte [ebp - 0x45], 0
cmovae edx, dword [ebp - 0x430]
xor ecx, ecx
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0x49]
push eax
call fcn.00459470
mov byte [ebp + ecx - 0x49], al
inc ecx
cmp ecx, 4
jb 0x42ea10
push edx
push 0x104
lea eax, [ebp - 0x81c]
push eax
push 0
lea eax, [ebp - 0x49]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push 0xffffffffffffffc3
mov byte [ebp - 0x12], 0
call fcn.00459470
mov byte [ebp - 0x11], al
mov byte [ebp - 0x13], al
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x13]
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x42ea60
sub ecx, edx
mov eax, closesocket
mov edx, dword [ebp - 0x380]
sub eax, edx
cmp eax, ecx
jb 0x430ca4
cmp dword [ebp - 0x37c], 0x10
lea eax, [ebp - 0x390]
push ecx
cmovae eax, dword [ebp - 0x390]
lea ecx, [ebp - 0x13]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x164]
lea ecx, [ebp - 0x628]
call fcn.00460300
lea eax, [ebp - 0x81c]
or edi, 0x4000
push eax
lea edx, [ebp - 0x628]
mov dword [ebp - 0x10], edi
lea ecx, [ebp - 0x2c0]
call fcn.0045c440
add esp, 4
mov byte [ebp - 4], 8
and edi, 0xffffbfff
mov dword [ebp - 0x10], edi
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x628]
call fcn.00402890
mov dword [ebp - 0x129], 0xf8f0f3c3
xor ecx, ecx
mov dword [ebp - 0x125], 0xb1ecf1f6
mov dword [ebp - 0x121], 0xf1f0ecf5
mov byte [ebp - 0x11d], 0
movzx eax, byte [ebp + ecx - 0x129]
push eax
call fcn.00459470
mov byte [ebp + ecx - 0x129], al
inc ecx
cmp ecx, 0xc
jb 0x42eb12
lea eax, [ebp - 0x129]
push eax
lea edx, [ebp - 0x2c0]
lea ecx, [ebp - 0x418]
call fcn.0045c3b0
add esp, 4
mov byte [ebp - 4], 0xa
xor ecx, ecx
mov word [ebp - 0x1a], 0xfded
mov byte [ebp - 0x18], 0
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0x1a]
push eax
call fcn.00459470
mov byte [ebp + ecx - 0x1a], al
inc ecx
cmp ecx, 2
jb 0x42eb60
cmp dword [ebp - 0x404], 0x10
lea ecx, [ebp - 0x1a]
lea eax, [ebp - 0x418]
cmovae eax, dword [ebp - 0x418]
push ecx
push eax
call fcn.004ceb20
add esp, 8
test eax, eax
jne 0x42f209
lea eax, [ebp - 0x6b8]
push eax
call fcn.00430db0
mov esi, eax
xor edx, edx
nop
movzx ecx, byte [esi + edx]
push ecx
call fcn.00459470
mov byte [esi + edx], al
inc edx
cmp edx, 0xf
jb 0x42ebb0
push esi
lea edx, [ebp - 0x2c0]
lea ecx, [ebp - 0x5a0]
call fcn.0045c3b0
add esp, 4
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x5a0]
call fcn.00457e70
lea edx, [ebp - 0x170]
mov ecx, eax
call fcn.00414180
test eax, eax
jne 0x42f1fa
lea eax, [ebp - 0x937]
push eax
call fcn.00430de0
mov esi, eax
xor edx, edx
nop dword [eax]
movzx ecx, byte [esi + edx]
push ecx
call fcn.00459470
mov byte [esi + edx], al
inc edx
cmp edx, 0x4a
jb 0x42ec10
mov edi, dword [ebp - 0x170]
lea eax, [ebp - 0x174]
push ecx
push eax
push ecx
mov edx, esi
mov ecx, edi
call fcn.004a3780
add esp, 0xc
test eax, eax
jne 0x42f1f3
mov esi, dword [ebp - 0x174]
mov ecx, esi
call fcn.0048f020
cmp eax, 0x64
jne 0x42f1ec
nop dword [eax]
xor edx, edx
mov ecx, esi
call fcn.0048f310
mov edx, 1
mov dword [ebp - 0x268], eax
mov ecx, esi
call fcn.0048f310
mov edx, 2
mov dword [ebp - 0x270], eax
mov ecx, esi
call fcn.0048f310
push 0
lea ecx, [ebp - 0xe8]
mov dword [ebp - 0x118], eax
mov byte [ebp - 0xf0], 0
call fcn.00459a30
mov byte [ebp - 4], 0xd
xorps xmm0, xmm0
lea edx, [ebp - 0x81c]
mov byte [ebp - 0x1e4], 0
lea ecx, [ebp - 0x1e4]
movq qword [ebp - 0x1dc], xmm0
call fcn.0046d680
mov byte [ebp - 4], 0xe
xor ecx, ecx
mov dword [ebp - 0xbc], 0xf9f0edef
mov dword [ebp - 0xb8], 0xfaf3f6
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0xbc]
push eax
call fcn.00459470
mov byte [ebp + ecx - 0xbc], al
inc ecx
cmp ecx, 7
jb 0x42ecf0
lea eax, [ebp - 0xbc]
push eax
lea ecx, [ebp - 0xf0]
call fcn.0045c780
mov edi, eax
mov byte [ebp - 4], 0xf
mov dl, byte [edi]
mov cl, byte [ebp - 0x1e4]
mov eax, dword [ebp - 0x1dc]
mov byte [edi], cl
mov esi, dword [edi + 0xc]
mov ecx, dword [ebp - 0x1d8]
mov byte [ebp - 0x1e4], dl
mov byte [ebp - 0x290], dl
mov edx, dword [edi + 8]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0x1dc], edx
mov dword [ebp - 0x1d8], esi
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x1dc]
push dword [ebp - 0x290]
call fcn.00459710
xorps xmm0, xmm0
mov byte [ebp - 0x1d4], 0
lea edx, [ebp - 0x118]
movq qword [ebp - 0x1cc], xmm0
lea ecx, [ebp - 0x1d4]
call fcn.0046d5a0
mov byte [ebp - 4], 0x10
xor ecx, ecx
mov dword [ebp - 0x2a], 0xf3edea
movzx eax, byte [ebp + ecx - 0x2a]
push eax
call fcn.00459470
mov byte [ebp + ecx - 0x2a], al
inc ecx
cmp ecx, 3
jb 0x42eda2
mov al, byte [ebp - 0xf0]
test al, al
jne 0x42edf5
push 1
lea ecx, [ebp - 0x360]
mov byte [ebp - 0xf0], 1
call fcn.00459a30
mov eax, dword [ebp - 0x35c]
mov esi, dword [ebp - 0x360]
mov dword [ebp - 0xe8], esi
mov dword [ebp - 0xe4], eax
mov al, byte [ebp - 0xf0]
jmp 0x42edfb
mov esi, dword [ebp - 0xe8]
cmp al, 1
jne 0x430d03
xorps xmm0, xmm0
mov dword [ebp - 0x310], 0
lea edx, [ebp - 0x2a]
mov dword [ebp - 0x30c], 0
movups xmmword [ebp - 0x320], xmm0
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x42ee27
sub edx, ecx
lea eax, [ebp - 0x2a]
push edx
push eax
lea ecx, [ebp - 0x320]
call fcn.00402aa0
mov byte [ebp - 4], 0x11
lea eax, [ebp - 0x320]
push eax
mov ecx, esi
call fcn.0045fcc0
mov edi, eax
mov byte [ebp - 4], 0x10
mov ecx, dword [ebp - 0x30c]
cmp ecx, 0x10
jb 0x42ee92
mov edx, dword [ebp - 0x320]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x42ee88
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x430ca9
push ecx
push edx
call fcn.004b2a81
add esp, 8
mov dword [ebp - 0x310], 0
mov dword [ebp - 0x30c], 0xf
mov byte [ebp - 0x320], 0
mov byte [ebp - 4], 0x14
mov cl, byte [edi]
mov al, byte [ebp - 0x1d4]
mov byte [edi], al
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov eax, dword [ebp - 0x1cc]
mov byte [ebp - 0x1d4], cl
mov byte [ebp - 0x264], cl
mov ecx, dword [ebp - 0x1c8]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0x1cc], edx
mov dword [ebp - 0x1c8], esi
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x1cc]
push dword [ebp - 0x264]
call fcn.00459710
xorps xmm0, xmm0
mov byte [ebp - 0x1f4], 0
lea edx, [ebp - 0x268]
movq qword [ebp - 0x1ec], xmm0
lea ecx, [ebp - 0x1f4]
call fcn.0046d5a0
mov byte [ebp - 4], 0x15
xor ecx, ecx
mov dword [ebp - 0x64], 0xf6f8f0f3
mov word [ebp - 0x60], 0xf1
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x64]
push eax
call fcn.00459470
mov byte [ebp + ecx - 0x64], al
inc ecx
cmp ecx, 5
jb 0x42ef40
lea eax, [ebp - 0x64]
push eax
lea ecx, [ebp - 0xf0]
call fcn.0045c780
mov edi, eax
mov byte [ebp - 4], 0x16
mov dl, byte [edi]
mov cl, byte [ebp - 0x1f4]
mov eax, dword [ebp - 0x1ec]
mov byte [edi], cl
mov esi, dword [edi + 0xc]
mov ecx, dword [ebp - 0x1e8]
mov byte [ebp - 0x1f4], dl
mov byte [ebp - 0x26c], dl
mov edx, dword [edi + 8]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0x1ec], edx
mov dword [ebp - 0x1e8], esi
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x1ec]
push dword [ebp - 0x26c]
call fcn.00459710
xorps xmm0, xmm0
mov byte [ebp - 0x1b4], 0
lea edx, [ebp - 0x270]
movq qword [ebp - 0x1ac], xmm0
lea ecx, [ebp - 0x1b4]
call fcn.0046d5a0
mov byte [ebp - 4], 0x17
xor ecx, ecx
mov dword [ebp - 0x7f], 0xececfeef
mov dword [ebp - 0x7b], 0xfbedf0e8
mov byte [ebp - 0x77], 0
movzx eax, byte [ebp + ecx - 0x7f]
push eax
call fcn.00459470
mov byte [ebp + ecx - 0x7f], al
inc ecx
cmp ecx, 8
jb 0x42eff4
mov al, byte [ebp - 0xf0]
test al, al
jne 0x42f047
push 1
lea ecx, [ebp - 0x358]
mov byte [ebp - 0xf0], 1
call fcn.00459a30
mov eax, dword [ebp - 0x354]
mov esi, dword [ebp - 0x358]
mov dword [ebp - 0xe8], esi
mov dword [ebp - 0xe4], eax
mov al, byte [ebp - 0xf0]
jmp 0x42f04d
mov esi, dword [ebp - 0xe8]
cmp al, 1
jne 0x430cae
xorps xmm0, xmm0
mov dword [ebp - 0x328], 0
lea edx, [ebp - 0x7f]
mov dword [ebp - 0x324], 0
movups xmmword [ebp - 0x338], xmm0
lea ecx, [edx + 1]
nop dword [eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x42f080
sub edx, ecx
lea eax, [ebp - 0x7f]
push edx
push eax
lea ecx, [ebp - 0x338]
call fcn.00402aa0
mov byte [ebp - 4], 0x18
lea eax, [ebp - 0x338]
push eax
mov ecx, esi
call fcn.0045fcc0
mov edi, eax
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x324]
cmp ecx, 0x10
jb 0x42f0eb
mov edx, dword [ebp - 0x338]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x42f0e1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x430ca9
push ecx
push edx
call fcn.004b2a81
add esp, 8
mov dword [ebp - 0x328], 0
mov dword [ebp - 0x324], 0xf
mov byte [ebp - 0x338], 0
mov byte [ebp - 4], 0x1b
mov cl, byte [edi]
mov al, byte [ebp - 0x1b4]
mov byte [edi], al
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov eax, dword [ebp - 0x1ac]
mov byte [ebp - 0x1b4], cl
mov byte [ebp - 0x274], cl
mov ecx, dword [ebp - 0x1a8]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0x1ac], edx
mov dword [ebp - 0x1a8], esi
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x1ac]
push dword [ebp - 0x274]
call fcn.00459710
mov dword [ebp - 0x98], 0xf6f8f0f3
xor ecx, ecx
mov word [ebp - 0x94], 0xecf1
mov byte [ebp - 0x92], 0
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x98]
push eax
call fcn.00459470
mov byte [ebp + ecx - 0x98], al
inc ecx
cmp ecx, 6
jb 0x42f180
mov ecx, dword [ebp - 0x11c]
lea eax, [ebp - 0x98]
push eax
call fcn.0045c780
lea ecx, [ebp - 0xf0]
push ecx
mov ecx, eax
call fcn.00455620
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0xe8]
push dword [ebp - 0xf0]
call fcn.00459710
mov esi, dword [ebp - 0x174]
mov ecx, esi
call fcn.0048f020
cmp eax, 0x64
je 0x42ec60
mov edi, dword [ebp - 0x170]
mov ecx, esi
call fcn.0048ec90
mov ecx, edi
call fcn.004144d0
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x5a0]
jmp 0x430b52
push eax
call fcn.004d23a8
sub esp, 0x14
lea eax, [ebp - 0x418]
mov ecx, esp
mov dword [ebp - 0x43c], esp
push eax
call fcn.00458190
mov byte [ebp - 4], 0x1c
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x5d0]
call fcn.0040b450
add esp, 0x18
mov byte [ebp - 4], 0x1d
push 0
push 1
sub esp, 0x28
mov ecx, esp
mov dword [ebp - 0x27c], esp
push ecx
call fcn.00455560
mov byte [ebp - 4], 0x1e
mov byte [ebp - 4], 0x1d
lea edx, [ebp - 0x5d0]
lea ecx, [ebp - 0x3d0]
call fcn.0045c940
add esp, 0x30
mov byte [ebp - 4], 0x1f
lea eax, [ebp - 0x587]
push eax
call fcn.00430d60
mov esi, eax
xor edx, edx
movzx ecx, byte [edx + esi]
push ecx
call fcn.00459470
mov byte [edx + esi], al
inc edx
cmp edx, 6
jb 0x42f285
push esi
lea ecx, [ebp - 0x3d0]
call fcn.0045c780
mov ecx, eax
lea eax, [ebp - 0x184]
push eax
call fcn.00455880
lea eax, [ebp - 0x500]
push eax
call fcn.00455810
lea eax, [ebp - 0x500]
push eax
lea ecx, [ebp - 0x184]
call fcn.00455300
test al, al
je 0x42fe06
nop dword [eax + eax]
lea ecx, [ebp - 0x184]
call fcn.00455410
push eax
lea ecx, [ebp - 0x224]
call fcn.00455d10
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0x3c]
push 0
mov byte [ebp - 0x44], 0
call fcn.00459a30
mov byte [ebp - 4], 0x22
xorps xmm0, xmm0
lea edx, [ebp - 0x81c]
mov byte [ebp - 0x1a4], 0
lea ecx, [ebp - 0x1a4]
movq qword [ebp - 0x19c], xmm0
call fcn.0046d680
mov byte [ebp - 4], 0x23
xor ecx, ecx
mov dword [ebp - 0x58], 0xf9f0edef
mov dword [ebp - 0x54], 0xfaf3f6
movzx eax, byte [ebp + ecx - 0x58]
push eax
call fcn.00459470
mov byte [ebp + ecx - 0x58], al
inc ecx
cmp ecx, 7
jb 0x42f344
mov al, byte [ebp - 0x44]
test al, al
jne 0x42f388
push 1
lea ecx, [ebp - 0x340]
mov byte [ebp - 0x44], 1
call fcn.00459a30
mov eax, dword [ebp - 0x33c]
mov esi, dword [ebp - 0x340]
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x38], eax
mov al, byte [ebp - 0x44]
jmp 0x42f38b
mov esi, dword [ebp - 0x3c]
cmp al, 1
jne 0x430c53
xorps xmm0, xmm0
mov dword [ebp - 0x2c8], 0
lea edx, [ebp - 0x58]
mov dword [ebp - 0x2c4], 0
movups xmmword [ebp - 0x2d8], xmm0
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x42f3b7
sub edx, ecx
lea eax, [ebp - 0x58]
push edx
push eax
lea ecx, [ebp - 0x2d8]
call fcn.00402aa0
mov byte [ebp - 4], 0x24
lea eax, [ebp - 0x2d8]
push eax
mov ecx, esi
call fcn.0045fcc0
mov edi, eax
mov byte [ebp - 4], 0x23
mov ecx, dword [ebp - 0x2c4]
cmp ecx, 0x10
jb 0x42f422
mov edx, dword [ebp - 0x2d8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x42f418
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x430ca9
push ecx
push edx
call fcn.004b2a81
add esp, 8
mov dword [ebp - 0x2c8], 0
mov dword [ebp - 0x2c4], 0xf
mov byte [ebp - 0x2d8], 0
mov byte [ebp - 4], 0x27
mov cl, byte [edi]
mov al, byte [ebp - 0x1a4]
mov byte [edi], al
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov eax, dword [ebp - 0x19c]
mov byte [ebp - 0x1a4], cl
mov byte [ebp - 0x278], cl
mov ecx, dword [ebp - 0x198]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0x19c], edx
mov dword [ebp - 0x198], esi
mov byte [ebp - 4], 0x22
lea ecx, [ebp - 0x19c]
push dword [ebp - 0x278]
call fcn.00459710
mov dword [ebp - 0x137], 0xf2edf0f9
xor ecx, ecx
mov dword [ebp - 0x133], 0xf2fdeacc
mov dword [ebp - 0x12f], 0xcdcaebf6
mov word [ebp - 0x12b], 0xd3
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x137]
push eax
call fcn.00459470
mov byte [ebp + ecx - 0x137], al
inc ecx
cmp ecx, 0xd
jb 0x42f4c0
lea eax, [ebp - 0x137]
push eax
lea ecx, [ebp - 0x224]
call fcn.0045c780
cmp byte [eax], 0
je 0x42f69c
mov dword [ebp - 0x112], 0xf2edf0f9
xor ecx, ecx
mov dword [ebp - 0x10e], 0xf2fdeacc
mov dword [ebp - 0x10a], 0xcdcaebf6
mov word [ebp - 0x106], 0xd3
nop
movzx eax, byte [ebp + ecx - 0x112]
push eax
call fcn.00459470
mov byte [ebp + ecx - 0x112], al
inc ecx
cmp ecx, 0xd
jb 0x42f520
lea eax, [ebp - 0x112]
push eax
lea ecx, [ebp - 0x224]
call fcn.0045c780
cmp byte [eax], 3
jne 0x42f69c
lea eax, [ebp - 0x66e]
push eax
call fcn.00430e80
mov esi, eax
xor edx, edx
movzx ecx, byte [esi + edx]
push ecx
call fcn.00459470
mov byte [esi + edx], al
inc edx
cmp edx, 0xd
jb 0x42f566
push esi
lea ecx, [ebp - 0x224]
call fcn.0045c780
push eax
lea ecx, [ebp - 0x214]
call fcn.00455d10
mov byte [ebp - 4], 0x28
xor ecx, ecx
mov dword [ebp - 0x2e], 0xf3edea
nop
movzx eax, byte [ebp + ecx - 0x2e]
push eax
call fcn.00459470
mov byte [ebp + ecx - 0x2e], al
inc ecx
cmp ecx, 3
jb 0x42f5a0
mov al, byte [ebp - 0x44]
test al, al
jne 0x42f5e4
push 1
lea ecx, [ebp - 0x350]
mov byte [ebp - 0x44], 1
call fcn.00459a30
mov eax, dword [ebp - 0x34c]
mov esi, dword [ebp - 0x350]
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x38], eax
mov al, byte [ebp - 0x44]
jmp 0x42f5e7
mov esi, dword [ebp - 0x3c]
cmp al, 1
jne 0x430bef
xorps xmm0, xmm0
mov dword [ebp - 0x3d8], 0
lea edx, [ebp - 0x2e]
mov dword [ebp - 0x3d4], 0
movups xmmword [ebp - 0x3e8], xmm0
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x42f613
sub edx, ecx
lea eax, [ebp - 0x2e]
push edx
push eax
lea ecx, [ebp - 0x3e8]
call fcn.00402aa0
mov byte [ebp - 4], 0x29
lea eax, [ebp - 0x3e8]
push eax
mov ecx, esi
call fcn.0045fcc0
mov edi, eax
mov byte [ebp - 4], 0x28
lea ecx, [ebp - 0x3e8]
call fcn.00402890
mov byte [ebp - 4], 0x2c
mov dl, byte [edi]
mov cl, byte [ebp - 0x214]
mov byte [edi], cl
mov eax, dword [ebp - 0x20c]
mov ecx, dword [ebp - 0x208]
mov byte [ebp - 0x214], dl
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0x20c], edx
mov dword [ebp - 0x208], esi
mov byte [ebp - 4], 0x22
lea ecx, [ebp - 0x20c]
push dword [ebp - 0x214]
jmp 0x42f851
mov dword [ebp - 0xc5], 0xebecf0f7
xor ecx, ecx
mov dword [ebp - 0xc1], 0xfaf2fef1
mov byte [ebp - 0xbd], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0xc5]
push eax
call fcn.00459470
mov byte [ebp + ecx - 0xc5], al
inc ecx
cmp ecx, 8
jb 0x42f6c0
lea eax, [ebp - 0xc5]
push eax
lea ecx, [ebp - 0x224]
call fcn.0045c780
push eax
lea ecx, [ebp - 0x204]
call fcn.00455d10
mov byte [ebp - 4], 0x2d
xor ecx, ecx
mov dword [ebp - 0x32], 0xf3edea
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x32]
push eax
call fcn.00459470
mov byte [ebp + ecx - 0x32], al
inc ecx
cmp ecx, 3
jb 0x42f710
mov al, byte [ebp - 0x44]
test al, al
jne 0x42f754
push 1
lea ecx, [ebp - 0x348]
mov byte [ebp - 0x44], 1
call fcn.00459a30
mov eax, dword [ebp - 0x344]
mov esi, dword [ebp - 0x348]
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x38], eax
mov al, byte [ebp - 0x44]
jmp 0x42f757
mov esi, dword [ebp - 0x3c]
cmp al, 1
jne 0x430c21
xorps xmm0, xmm0
mov dword [ebp - 0x2f8], 0
lea edx, [ebp - 0x32]
mov dword [ebp - 0x2f4], 0
movups xmmword [ebp - 0x308], xmm0
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x42f783
sub edx, ecx
lea eax, [ebp - 0x32]
push edx
push eax
lea ecx, [ebp - 0x308]
call fcn.00402aa0
mov byte [ebp - 4], 0x2e
lea eax, [ebp - 0x308]
push eax
mov ecx, esi
call fcn.0045fcc0
mov edi, eax
mov byte [ebp - 4], 0x2d
mov ecx, dword [ebp - 0x2f4]
cmp ecx, 0x10
jb 0x42f7ee
mov edx, dword [ebp - 0x308]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x42f7e4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x430ca9
push ecx
push edx
call fcn.004b2a81
add esp, 8
mov dword [ebp - 0x2f8], 0
mov dword [ebp - 0x2f4], 0xf
mov byte [ebp - 0x308], 0
mov byte [ebp - 4], 0x31
mov cl, byte [edi]
mov al, byte [ebp - 0x204]
mov byte [edi], al
mov eax, dword [ebp - 0x1fc]
mov byte [ebp - 0x204], cl
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov ecx, dword [ebp - 0x1f8]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0x1fc], edx
mov dword [ebp - 0x1f8], esi
mov byte [ebp - 4], 0x22
lea ecx, [ebp - 0x1fc]
push dword [ebp - 0x204]
call fcn.00459710
movaps xmm0, xmmword [0x51e7f0]
xor ecx, ecx
movups xmmword [ebp - 0x239], xmm0
mov word [ebp - 0x229], 0xfa
nop
movzx eax, byte [ebp + ecx - 0x239]
push eax
call fcn.00459470
mov byte [ebp + ecx - 0x239], al
inc ecx
cmp ecx, 0x11
jb 0x42f870
lea eax, [ebp - 0x239]
push eax
lea ecx, [ebp - 0x224]
call fcn.0045c780
mov byte [ebp - 4], 0x32
xorps xmm0, xmm0
mov esi, dword [ebp - 0x10]
lea edx, [ebp - 0x260]
movups xmmword [ebp - 0x260], xmm0
mov dword [ebp - 0x250], 0
or esi, 2
mov dword [ebp - 0x24c], 0
mov ecx, eax
mov dword [ebp - 0x250], 0
mov dword [ebp - 0x24c], 0xf
mov byte [ebp - 0x260], 0
mov dword [ebp - 0x10], esi
call fcn.0046d400
mov dword [ebp - 0x88], 0xa9dcd1da
xor ecx, ecx
mov dword [ebp - 0x84], 0xc0b5ada8
mov byte [ebp - 0x80], 0
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x88]
push eax
call fcn.00459470
mov byte [ebp + ecx - 0x88], al
inc ecx
cmp ecx, 8
jb 0x42f910
mov byte [ebp - 4], 0x33
lea ecx, [ebp - 0x88]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x42f938
sub ecx, edx
lea eax, [ebp - 0x88]
push ecx
push eax
push ecx
lea ecx, [ebp - 0x260]
call fcn.00461260
mov dword [ebp - 0x2e0], 0
lea edx, [ebp - 0x2f0]
mov dword [ebp - 0x2dc], 0
lea ecx, [ebp - 0x194]
or esi, 4
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x2f0], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x2e0], xmm0
xorps xmm0, xmm0
mov dword [ebp - 0x10], esi
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 0x194], 0
movq qword [ebp - 0x18c], xmm0
call fcn.0046d350
mov byte [ebp - 4], 0x34
xor ecx, ecx
mov dword [ebp - 0x5e], 0xf6f8f0f3
mov word [ebp - 0x5a], 0xf1
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x5e]
push eax
call fcn.00459470
mov byte [ebp + ecx - 0x5e], al
inc ecx
cmp ecx, 5
jb 0x42f9d0
lea eax, [ebp - 0x5e]
push eax
lea ecx, [ebp - 0x44]
call fcn.0045c780
mov edi, eax
mov byte [ebp - 4], 0x35
mov dl, byte [edi]
mov cl, byte [ebp - 0x194]
mov eax, dword [ebp - 0x18c]
mov byte [edi], cl
mov esi, dword [edi + 0xc]
mov ecx, dword [ebp - 0x188]
mov byte [ebp - 0x194], dl
mov byte [ebp - 0x168], dl
mov edx, dword [edi + 8]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0x18c], edx
mov dword [ebp - 0x188], esi
mov byte [ebp - 4], 0x33
lea ecx, [ebp - 0x18c]
push dword [ebp - 0x168]
call fcn.00459710
mov esi, dword [ebp - 0x10]
and esi, 0xfffffffb
mov dword [ebp - 0x10], esi
mov byte [ebp - 4], 0x32
mov ecx, dword [ebp - 0x2dc]
cmp ecx, 0x10
jb 0x42fa8d
mov edx, dword [ebp - 0x2f0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x42fa83
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x430ca9
push ecx
push edx
call fcn.004b2a81
add esp, 8
and esi, 0xfffffffd
mov dword [ebp - 0x2e0], 0
mov dword [ebp - 0x2dc], 0xf
mov byte [ebp - 0x2f0], 0
mov dword [ebp - 0x10], esi
mov byte [ebp - 4], 0x22
mov ecx, dword [ebp - 0x24c]
cmp ecx, 0x10
jb 0x42faec
mov edx, dword [ebp - 0x260]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x42fae2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x430ca9
push ecx
push edx
call fcn.004b2a81
add esp, 8
movaps xmm0, xmmword [0x51e5f0]
xor ecx, ecx
mov dword [ebp - 0x250], 0
mov dword [ebp - 0x24c], 0xf
mov byte [ebp - 0x260], 0
movups xmmword [ebp - 0x239], xmm0
mov word [ebp - 0x229], 0xfb
movzx eax, byte [ebp + ecx - 0x239]
push eax
call fcn.00459470
mov byte [ebp + ecx - 0x239], al
inc ecx
cmp ecx, 0x11
jb 0x42fb20
lea eax, [ebp - 0x239]
push eax
lea ecx, [ebp - 0x224]
call fcn.0045c780
mov byte [ebp - 4], 0x36
xorps xmm0, xmm0
movups xmmword [ebp - 0x378], xmm0
mov dword [ebp - 0x368], 0
lea edx, [ebp - 0x378]
mov dword [ebp - 0x364], 0
or esi, 8
mov ecx, eax
mov dword [ebp - 0x368], 0
mov dword [ebp - 0x364], 0xf
mov byte [ebp - 0x378], 0
mov dword [ebp - 0x10], esi
call fcn.0046d400
mov dword [ebp - 0x91], 0xa9dcd1da
xor ecx, ecx
mov dword [ebp - 0x8d], 0xc0b5ada8
mov byte [ebp - 0x89], 0
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x91]
push eax
call fcn.00459470
mov byte [ebp + ecx - 0x91], al
inc ecx
cmp ecx, 8
jb 0x42fbc0
mov byte [ebp - 4], 0x37
lea ecx, [ebp - 0x91]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x42fbe8
sub ecx, edx
lea eax, [ebp - 0x91]
push ecx
push eax
push ecx
lea ecx, [ebp - 0x378]
call fcn.00461260
mov dword [ebp - 0x3f0], 0
lea edx, [ebp - 0x400]
mov dword [ebp - 0x3ec], 0
lea ecx, [ebp - 0x1c4]
or esi, 0x10
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x400], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x3f0], xmm0
xorps xmm0, xmm0
mov dword [ebp - 0x10], esi
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 0x1c4], 0
movq qword [ebp - 0x1bc], xmm0
call fcn.0046d350
mov byte [ebp - 4], 0x38
xor ecx, ecx
mov dword [ebp - 0xce], 0xececfeef
mov dword [ebp - 0xca], 0xfbedf0e8
mov byte [ebp - 0xc6], 0
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0xce]
push eax
call fcn.00459470
mov byte [ebp + ecx - 0xce], al
inc ecx
cmp ecx, 8
jb 0x42fc90
lea eax, [ebp - 0xce]
push eax
lea ecx, [ebp - 0x44]
call fcn.0045c780
mov edi, eax
mov byte [ebp - 4], 0x39
mov dl, byte [edi]
mov cl, byte [ebp - 0x1c4]
mov eax, dword [ebp - 0x1bc]
mov byte [edi], cl
mov esi, dword [edi + 0xc]
mov ecx, dword [ebp - 0x1b8]
mov byte [ebp - 0x1c4], dl
mov byte [ebp - 0x164], dl
mov edx, dword [edi + 8]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0x1bc], edx
mov dword [ebp - 0x1b8], esi
mov byte [ebp - 4], 0x37
lea ecx, [ebp - 0x1bc]
push dword [ebp - 0x164]
call fcn.00459710
mov esi, dword [ebp - 0x10]
and esi, 0xffffffef
mov dword [ebp - 0x10], esi
mov byte [ebp - 4], 0x36
lea ecx, [ebp - 0x400]
call fcn.00402890
and esi, 0xfffffff7
mov dword [ebp - 0x10], esi
mov byte [ebp - 4], 0x22
lea ecx, [ebp - 0x378]
call fcn.00402890
mov dword [ebp - 0x50], 0xf6f8f0f3
xor ecx, ecx
mov word [ebp - 0x4c], 0xecf1
mov byte [ebp - 0x4a], 0
nop
movzx eax, byte [ebp + ecx - 0x50]
push eax
call fcn.00459470
mov byte [ebp + ecx - 0x50], al
inc ecx
cmp ecx, 6
jb 0x42fd50
mov ecx, dword [ebp - 0x11c]
lea eax, [ebp - 0x50]
push eax
call fcn.0045c780
lea ecx, [ebp - 0x44]
push ecx
mov ecx, eax
call fcn.00455620
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0x3c]
push dword [ebp - 0x44]
call fcn.00459710
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x21c]
push dword [ebp - 0x224]
call fcn.00459710
mov eax, dword [ebp - 0x184]
movzx eax, byte [eax]
sub eax, 1
je 0x42fdc7
sub eax, 1
je 0x42fdbe
inc dword [ebp - 0x178]
jmp 0x42fdea
add dword [ebp - 0x17c], 0x10
jmp 0x42fdea
mov eax, dword [ebp - 0x180]
lea ecx, [ebp - 0x118]
mov dword [ebp - 0x118], eax
call fcn.004596b0
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x180], eax
lea eax, [ebp - 0x500]
push eax
lea ecx, [ebp - 0x184]
call fcn.00455300
test al, al
jne 0x42f2e0
jmp 0x42fe09
mov esi, dword [ebp - 0x10]
mov dword [ebp - 0x146], 0xfeeacec3
xor ecx, ecx
mov dword [ebp - 0x142], 0xf2eaebf1
mov dword [ebp - 0x13e], 0xedfadcc0
mov word [ebp - 0x13a], 0xeceb
mov byte [ebp - 0x138], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x146]
push eax
call fcn.00459470
mov byte [ebp + ecx - 0x146], al
inc ecx
cmp ecx, 0xe
jb 0x42fe40
lea eax, [ebp - 0x146]
push eax
lea edx, [ebp + 0x20]
lea ecx, [ebp - 0x2a8]
call fcn.0045c3b0
add esp, 4
mov byte [ebp - 4], 0x3a
lea ecx, [ebp - 0x2a8]
cmp dword [ebp - 0x294], 0x10
cmovae ecx, dword [ebp - 0x2a8]
call fcn.0040b8c0
mov edi, dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
test al, al
jne 0x42febb
cmp dword [ebp - 0x294], 0x10
lea eax, [ebp - 0x2a8]
push 0
cmovae eax, dword [ebp - 0x2a8]
push eax
call edi
test eax, eax
je 0x430b24
xorps xmm0, xmm0
mov byte [ebp - 0x228], 0
lea ecx, [ebp - 0x8ec]
movups xmmword [ebp - 0x248], xmm0
movups xmmword [ebp - 0x238], xmm0
call fcn.00474d00
lea ecx, [ebp - 0x81c]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x42fee7
sub ecx, edx
lea eax, [ebp - 0x81c]
push ecx
push eax
lea ecx, [ebp - 0x8ec]
call fcn.00474d10
push ecx
lea ecx, [ebp - 0x8ec]
call fcn.00474de0
lea eax, [ebp - 0x248]
push eax
lea ecx, [ebp - 0x8ec]
call fcn.00474eb0
push 0xffffffffffffffc0
mov byte [ebp - 0x16], 0
call fcn.00459470
mov byte [ebp - 0x17], al
mov al, byte [ebp - 0x11]
mov byte [ebp - 0x14], 0
mov byte [ebp - 0x15], al
mov byte [ebp - 4], 0x3b
lea ecx, [ebp - 0x15]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x42ff43
sub ecx, edx
mov eax, closesocket
mov edx, dword [ebp - 0x298]
sub eax, edx
cmp eax, ecx
jb 0x430ca4
cmp dword [ebp - 0x294], 0x10
lea eax, [ebp - 0x2a8]
push ecx
cmovae eax, dword [ebp - 0x2a8]
lea ecx, [ebp - 0x15]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x27c]
lea ecx, [ebp - 0x5b8]
call fcn.00460300
or esi, 0x200
mov dword [ebp - 0x10], esi
mov byte [ebp - 4], 0x3c
lea eax, [ebp + 0x38]
cmp dword [ebp + 0x4c], 0x10
lea ecx, [ebp - 0x5b8]
push dword [ebp + 0x48]
cmovae eax, dword [ebp + 0x38]
push eax
call fcn.0045a730
mov dword [ebp - 0x398], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x3a8], xmm0
mov dword [ebp - 0x394], 0
or esi, 0x100
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x3a8], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x398], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov dword [ebp - 0x10], esi
mov byte [ebp - 4], 0x3d
lea ecx, [ebp - 0x17]
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x430010
sub ecx, edx
lea eax, [ebp - 0x17]
push ecx
push eax
lea ecx, [ebp - 0x3a8]
call fcn.0045a730
mov dword [ebp - 0x3b0], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x3c0], xmm0
mov dword [ebp - 0x3ac], 0
or esi, 0x80
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x3c0], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x3b0], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov dword [ebp - 0x10], esi
mov byte [ebp - 4], 0x3e
lea ecx, [ebp - 0x248]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x430085
sub ecx, edx
lea eax, [ebp - 0x248]
push ecx
push eax
lea ecx, [ebp - 0x3c0]
call fcn.0045a730
mov dword [ebp - 0x150], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x160], xmm0
mov dword [ebp - 0x14c], 0
or esi, 0x40
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x160], xmm0
movq xmm0, qword [eax + 0x10]
mov dword [ebp - 0x10], esi
and esi, 0xffffff7f
movq qword [ebp - 0x150], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov dword [ebp - 0x10], esi
mov byte [ebp - 4], 0x3f
lea ecx, [ebp - 0x3c0]
call fcn.00402890
and esi, 0xfffffeff
mov dword [ebp - 0x10], esi
mov byte [ebp - 4], 0x40
lea ecx, [ebp - 0x3a8]
call fcn.00402890
and esi, 0xfffffdff
mov dword [ebp - 0x10], esi
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0x5b8]
call fcn.00402890
cmp dword [ebp - 0x14c], 0x10
lea ecx, [ebp - 0x160]
cmovae ecx, dword [ebp - 0x160]
call fcn.0040b8c0
test al, al
jne 0x430173
cmp dword [ebp - 0x14c], 0x10
lea eax, [ebp - 0x160]
push 0
cmovae eax, dword [ebp - 0x160]
push eax
call edi
test eax, eax
je 0x430b0f
mov dword [ebp - 0xd7], 0xe6faf4c3
xor ecx, ecx
mov dword [ebp - 0xd3], 0xfdfbb1ac
mov byte [ebp - 0xcf], 0
movzx eax, byte [ebp + ecx - 0xd7]
push eax
call fcn.00459470
mov byte [ebp + ecx - 0xd7], al
inc ecx
cmp ecx, 8
jb 0x430190
sub esp, 0x18
lea eax, [ebp - 0xd7]
mov ecx, esp
mov dword [ebp - 0x280], esp
lea edx, [ebp - 0x2c0]
push eax
call fcn.0045c3b0
add esp, 4
mov byte [ebp - 4], 0x42
mov byte [ebp - 4], 0x41
call fcn.0040b820
add esp, 0x18
test al, al
je 0x4303cf
mov word [ebp - 0x1d], 0xfde8
xor ecx, ecx
mov byte [ebp - 0x1b], 0
nop
movzx eax, byte [ebp + ecx - 0x1d]
push eax
call fcn.00459470
mov byte [ebp + ecx - 0x1d], al
inc ecx
cmp ecx, 2
jb 0x4301f0
mov dword [ebp - 0x76], 0xe6faf4c3
xor ecx, ecx
mov dword [ebp - 0x72], 0xfdfbb1ac
mov byte [ebp - 0x6e], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x76]
push eax
call fcn.00459470
mov byte [ebp + ecx - 0x76], al
inc ecx
cmp ecx, 8
jb 0x430220
mov byte [ebp - 4], 0x43
lea ecx, [ebp - 0x76]
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x430240
sub ecx, edx
mov eax, closesocket
mov edx, dword [ebp - 0x150]
sub eax, edx
cmp eax, ecx
jb 0x430ca4
cmp dword [ebp - 0x14c], 0x10
lea eax, [ebp - 0x160]
push ecx
cmovae eax, dword [ebp - 0x160]
lea ecx, [ebp - 0x76]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x280]
lea ecx, [ebp - 0x488]
call fcn.00460300
or esi, 0x100000
lea ecx, [ebp - 0x1d]
mov dword [ebp - 0x10], esi
lea eax, [ebp - 0x488]
cmp dword [ebp - 0x474], 0x10
push ecx
cmovae eax, dword [ebp - 0x488]
push eax
call fcn.004ceb20
and esi, 0xffefffff
add esp, 8
mov edi, eax
mov dword [ebp - 0x10], esi
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0x488]
call fcn.00402890
test edi, edi
je 0x4303cf
lea eax, [ebp - 0x610]
push eax
call fcn.00430ed0
mov esi, eax
xor edx, edx
nop word [eax + eax]
movzx ecx, byte [esi + edx]
push ecx
call fcn.00459470
mov byte [esi + edx], al
inc edx
cmp edx, 7
jb 0x4302f0
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x44c], esp
push esi
call fcn.00402790
mov byte [ebp - 4], 0x44
lea eax, [ebp - 0x63a]
push eax
call fcn.00430eb0
mov esi, eax
xor edx, edx
nop dword [eax + eax]
movzx ecx, byte [esi + edx]
push ecx
call fcn.00459470
mov byte [esi + edx], al
inc edx
cmp edx, 8
jb 0x430330
sub esp, 0x18
lea edx, [ebp - 0x2c0]
mov ecx, esp
mov dword [ebp - 0x434], esp
push esi
call fcn.0045c3b0
add esp, 4
mov byte [ebp - 4], 0x45
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0x510]
call fcn.0042e4c0
mov byte [ebp - 4], 0x46
add esp, 0x20
lea ecx, [ebp - 0x550]
push ecx
mov ecx, eax
call fcn.004559c0
mov byte [ebp - 4], 0x48
lea ecx, [ebp - 0x508]
push dword [ebp - 0x510]
call fcn.00459710
lea ecx, [ebp - 0x550]
call fcn.00457e70
push edi
push dword [ebp - 0x540]
push 1
push eax
call fcn.004d6928
push edi
call fcn.004d23a8
add esp, 0x14
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0x550]
call fcn.00402890
mov esi, dword [ebp - 0x10]
mov dword [ebp - 0xe0], 0xe6faf4c3
xor ecx, ecx
mov dword [ebp - 0xdc], 0xfdfbb1ab
mov byte [ebp - 0xd8], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0xe0]
push eax
call fcn.00459470
mov byte [ebp + ecx - 0xe0], al
inc ecx
cmp ecx, 8
jb 0x4303f0
sub esp, 0x18
lea eax, [ebp - 0xe0]
mov ecx, esp
mov dword [ebp - 0x284], esp
lea edx, [ebp - 0x2c0]
push eax
call fcn.0045c3b0
add esp, 4
mov byte [ebp - 4], 0x49
mov byte [ebp - 4], 0x41
call fcn.0040b820
add esp, 0x18
test al, al
je 0x43062c
mov word [ebp - 0x20], 0xfde8
xor ecx, ecx
mov byte [ebp - 0x1e], 0
nop
movzx eax, byte [ebp + ecx - 0x20]
push eax
call fcn.00459470
mov byte [ebp + ecx - 0x20], al
inc ecx
cmp ecx, 2
jb 0x430450
mov dword [ebp - 0x6d], 0xe6faf4c3
xor ecx, ecx
mov dword [ebp - 0x69], 0xfdfbb1ab
mov byte [ebp - 0x65], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x6d]
push eax
call fcn.00459470
mov byte [ebp + ecx - 0x6d], al
inc ecx
cmp ecx, 8
jb 0x430480
mov byte [ebp - 4], 0x4a
lea ecx, [ebp - 0x6d]
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4304a0
sub ecx, edx
mov eax, closesocket
mov edx, dword [ebp - 0x150]
sub eax, edx
cmp eax, ecx
jb 0x430ca4
cmp dword [ebp - 0x14c], 0x10
lea eax, [ebp - 0x160]
push ecx
cmovae eax, dword [ebp - 0x160]
lea ecx, [ebp - 0x6d]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x284]
lea ecx, [ebp - 0x4a0]
call fcn.00460300
or esi, 0x20000
lea ecx, [ebp - 0x20]
mov dword [ebp - 0x10], esi
lea eax, [ebp - 0x4a0]
cmp dword [ebp - 0x48c], 0x10
push ecx
cmovae eax, dword [ebp - 0x4a0]
push eax
call fcn.004ceb20
and esi, 0xfffdffff
add esp, 8
mov edi, eax
mov dword [ebp - 0x10], esi
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0x4a0]
call fcn.00402890
test edi, edi
je 0x43062c
lea eax, [ebp - 0x5d8]
push eax
call fcn.00430f10
mov esi, eax
xor edx, edx
nop word [eax + eax]
movzx ecx, byte [edx + esi]
push ecx
call fcn.00459470
mov byte [edx + esi], al
inc edx
cmp edx, 7
jb 0x430550
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x454], esp
push esi
call fcn.00402790
mov byte [ebp - 4], 0x4b
lea eax, [ebp - 0x631]
push eax
call fcn.00430ef0
mov esi, eax
xor edx, edx
nop dword [eax + eax]
movzx ecx, byte [edx + esi]
push ecx
call fcn.00459470
mov byte [edx + esi], al
inc edx
cmp edx, 8
jb 0x430590
sub esp, 0x18
lea edx, [ebp - 0x2c0]
mov ecx, esp
mov dword [ebp - 0x450], esp
push esi
call fcn.0045c3b0
add esp, 4
mov byte [ebp - 4], 0x4c
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0x4e0]
call fcn.0042e4c0
mov byte [ebp - 4], 0x4d
add esp, 0x20
lea ecx, [ebp - 0x538]
push ecx
mov ecx, eax
call fcn.004559c0
mov byte [ebp - 4], 0x4f
lea ecx, [ebp - 0x4d8]
push dword [ebp - 0x4e0]
call fcn.00459710
lea ecx, [ebp - 0x538]
call fcn.00457e70
push edi
push dword [ebp - 0x528]
push 1
push eax
call fcn.004d6928
push edi
call fcn.004d23a8
add esp, 0x14
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0x538]
call fcn.00402890
mov dword [ebp - 0xfa], 0xedfafcc3
xor ecx, ecx
mov dword [ebp - 0xf6], 0xfbb1a7eb
mov word [ebp - 0xf2], 0xfd
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0xfa]
push eax
call fcn.00459470
mov byte [ebp + ecx - 0xfa], al
inc ecx
cmp ecx, 9
jb 0x430650
sub esp, 0x18
lea eax, [ebp - 0xfa]
mov ecx, esp
mov dword [ebp - 0x288], esp
lea edx, [ebp - 0x2c0]
push eax
call fcn.0045c3b0
add esp, 4
mov byte [ebp - 4], 0x50
mov byte [ebp - 4], 0x41
call fcn.0040b820
add esp, 0x18
test al, al
je 0x43089c
mov word [ebp - 0x23], 0xfde8
xor ecx, ecx
mov byte [ebp - 0x21], 0
nop
movzx eax, byte [ebp + ecx - 0x23]
push eax
call fcn.00459470
mov byte [ebp + ecx - 0x23], al
inc ecx
cmp ecx, 2
jb 0x4306b0
mov dword [ebp - 0xac], 0xedfafcc3
xor ecx, ecx
mov dword [ebp - 0xa8], 0xfbb1a7eb
mov word [ebp - 0xa4], 0xfd
nop dword [eax]
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0xac]
push eax
call fcn.00459470
mov byte [ebp + ecx - 0xac], al
inc ecx
cmp ecx, 9
jb 0x4306f0
mov byte [ebp - 4], 0x51
lea ecx, [ebp - 0xac]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x430718
sub ecx, edx
mov eax, closesocket
mov edx, dword [ebp - 0x150]
sub eax, edx
cmp eax, ecx
jb 0x430ca4
cmp dword [ebp - 0x14c], 0x10
lea eax, [ebp - 0x160]
push ecx
cmovae eax, dword [ebp - 0x160]
lea ecx, [ebp - 0xac]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x288]
lea ecx, [ebp - 0x4b8]
call fcn.00460300
mov esi, dword [ebp - 0x10]
lea ecx, [ebp - 0x23]
or esi, 0x40000
lea eax, [ebp - 0x4b8]
mov dword [ebp - 0x10], esi
cmp dword [ebp - 0x4a4], 0x10
push ecx
cmovae eax, dword [ebp - 0x4b8]
push eax
call fcn.004ceb20
and esi, 0xfffbffff
add esp, 8
mov edi, eax
mov dword [ebp - 0x10], esi
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0x4b8]
call fcn.00402890
test edi, edi
je 0x43089f
lea eax, [ebp - 0x643]
push eax
call fcn.00430f50
mov esi, eax
xor edx, edx
movzx ecx, byte [esi + edx]
push ecx
call fcn.00459470
mov byte [esi + edx], al
inc edx
cmp edx, 8
jb 0x4307c5
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x438], esp
push esi
call fcn.00402790
mov byte [ebp - 4], 0x52
lea eax, [ebp - 0x660]
push eax
call fcn.00430f30
mov esi, eax
xor edx, edx
nop dword [eax]
movzx ecx, byte [esi + edx]
push ecx
call fcn.00459470
mov byte [esi + edx], al
inc edx
cmp edx, 9
jb 0x430800
sub esp, 0x18
lea edx, [ebp - 0x2c0]
mov ecx, esp
mov dword [ebp - 0x448], esp
push esi
call fcn.0045c3b0
add esp, 4
mov byte [ebp - 4], 0x53
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0x520]
call fcn.0042e4c0
mov byte [ebp - 4], 0x54
add esp, 0x20
lea ecx, [ebp - 0x580]
push ecx
mov ecx, eax
call fcn.004559c0
mov byte [ebp - 4], 0x56
lea ecx, [ebp - 0x518]
push dword [ebp - 0x520]
call fcn.00459710
lea ecx, [ebp - 0x580]
call fcn.00457e70
push edi
push dword [ebp - 0x570]
push 1
push eax
call fcn.004d6928
push edi
call fcn.004d23a8
add esp, 0x14
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0x580]
call fcn.00402890
mov esi, dword [ebp - 0x10]
mov dword [ebp - 0x104], 0xedfafcc3
xor ecx, ecx
mov dword [ebp - 0x100], 0xfbb1a6eb
mov word [ebp - 0xfc], 0xfd
nop
movzx eax, byte [ebp + ecx - 0x104]
push eax
call fcn.00459470
mov byte [ebp + ecx - 0x104], al
inc ecx
cmp ecx, 9
jb 0x4308c0
sub esp, 0x18
lea eax, [ebp - 0x104]
mov ecx, esp
mov dword [ebp - 0x28c], esp
lea edx, [ebp - 0x2c0]
push eax
call fcn.0045c3b0
add esp, 4
mov byte [ebp - 4], 0x57
mov byte [ebp - 4], 0x41
call fcn.0040b820
add esp, 0x18
test al, al
je 0x430b0f
mov word [ebp - 0x26], 0xfde8
xor ecx, ecx
mov byte [ebp - 0x24], 0
nop
movzx eax, byte [ebp + ecx - 0x26]
push eax
call fcn.00459470
mov byte [ebp + ecx - 0x26], al
inc ecx
cmp ecx, 2
jb 0x430920
mov dword [ebp - 0xa2], 0xedfafcc3
xor ecx, ecx
mov dword [ebp - 0x9e], 0xfbb1a6eb
mov word [ebp - 0x9a], 0xfd
nop dword [eax]
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0xa2]
push eax
call fcn.00459470
mov byte [ebp + ecx - 0xa2], al
inc ecx
cmp ecx, 9
jb 0x430960
mov byte [ebp - 4], 0x58
lea ecx, [ebp - 0xa2]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x430988
sub ecx, edx
mov eax, closesocket
mov edx, dword [ebp - 0x150]
sub eax, edx
cmp eax, ecx
jb 0x430ca4
cmp dword [ebp - 0x14c], 0x10
lea eax, [ebp - 0x160]
push ecx
cmovae eax, dword [ebp - 0x160]
lea ecx, [ebp - 0xa2]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x28c]
lea ecx, [ebp - 0x4d0]
call fcn.00460300
or esi, 0x80000
lea ecx, [ebp - 0x26]
mov dword [ebp - 0x10], esi
lea eax, [ebp - 0x4d0]
cmp dword [ebp - 0x4bc], 0x10
push ecx
cmovae eax, dword [ebp - 0x4d0]
push eax
call fcn.004ceb20
and esi, 0xfff7ffff
add esp, 8
mov edi, eax
mov dword [ebp - 0x10], esi
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0x4d0]
call fcn.00402890
test edi, edi
je 0x430b0f
lea eax, [ebp - 0x64c]
push eax
call fcn.00430f90
mov esi, eax
xor edx, edx
movzx ecx, byte [edx + esi]
push ecx
call fcn.00459470
mov byte [edx + esi], al
inc edx
cmp edx, 8
jb 0x430a32
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x444], esp
push esi
call fcn.00402790
mov byte [ebp - 4], 0x59
lea eax, [ebp - 0x656]
push eax
call fcn.00430f70
mov esi, eax
xor edx, edx
nop word [eax + eax]
movzx ecx, byte [esi + edx]
push ecx
call fcn.00459470
mov byte [esi + edx], al
inc edx
cmp edx, 9
jb 0x430a70
sub esp, 0x18
lea edx, [ebp - 0x2c0]
mov ecx, esp
mov dword [ebp - 0x440], esp
push esi
call fcn.0045c3b0
add esp, 4
mov byte [ebp - 4], 0x5a
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0x4f0]
call fcn.0042e4c0
mov byte [ebp - 4], 0x5b
add esp, 0x20
lea ecx, [ebp - 0x568]
push ecx
mov ecx, eax
call fcn.004559c0
mov byte [ebp - 4], 0x5d
lea ecx, [ebp - 0x4e8]
push dword [ebp - 0x4f0]
call fcn.00459710
lea ecx, [ebp - 0x568]
call fcn.00457e70
push edi
push dword [ebp - 0x558]
push 1
push eax
call fcn.004d6928
push edi
call fcn.004d23a8
add esp, 0x14
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0x568]
call fcn.00402890
mov esi, dword [ebp - 0x10]
and esi, 0xffffffbf
mov dword [ebp - 0x10], esi
mov byte [ebp - 4], 0x3a
lea ecx, [ebp - 0x160]
call fcn.00402890
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x2a8]
call fcn.00402890
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x3c8]
push dword [ebp - 0x3d0]
call fcn.00459710
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x5d0]
call fcn.00402890
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x418]
call fcn.00402890
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x2c0]
call fcn.00402890
mov edi, dword [ebp - 0x10]
mov esi, dword [ebp - 0x16c]
push esi
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc esi
add esi, eax
mov dword [ebp - 0x16c], esi
cmp byte [esi], 0
jne 0x42e980
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x430]
call fcn.00402890
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x390]
call fcn.00402890
mov byte [ebp - 4], 2
lea ecx, [ebp + 8]
call fcn.00402890
mov byte [ebp - 4], 1
lea ecx, [ebp + 0x20]
call fcn.00402890
mov byte [ebp - 4], 0
lea ecx, [ebp + 0x38]
call fcn.00402890
mov eax, dword [ebp - 0x11c]
mov ecx, dword [ebp - 0xc]
pop edi
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret
lea ecx, [ebp - 0x44]
call fcn.00459d20
push eax
lea ecx, [ebp - 0x608]
call fcn.00402790
mov byte [ebp - 4], 0x2a
mov edx, str.cannot_use_operator___with_a_string_argument_with
push eax
lea ecx, [ebp - 0x5f0]
call fcn.0045c570
mov byte [ebp - 4], 0x2b
jmp 0x430d33
lea ecx, [ebp - 0x44]
call fcn.00459d20
push eax
lea ecx, [ebp - 0x608]
call fcn.00402790
mov byte [ebp - 4], 0x2f
mov edx, str.cannot_use_operator___with_a_string_argument_with
push eax
lea ecx, [ebp - 0x5f0]
call fcn.0045c570
mov byte [ebp - 4], 0x30
jmp 0x430d33
lea ecx, [ebp - 0x44]
call fcn.00459d20
push eax
lea ecx, [ebp - 0x700]
call fcn.00402790
mov byte [ebp - 4], 0x25
mov edx, str.cannot_use_operator___with_a_string_argument_with
push eax
lea ecx, [ebp - 0x718]
call fcn.0045c570
mov byte [ebp - 4], 0x26
mov edx, 0x131
push eax
lea ecx, [ebp - 0x6a8]
call fcn.004099e0
add esp, 8
lea eax, [ebp - 0x6a8]
push 0x52dd98
jmp 0x430d52
call fcn.00402210
call fcn.004cdf70
lea ecx, [ebp - 0xf0]
call fcn.00459d20
push eax
lea ecx, [ebp - 0x6d0]
call fcn.00402790
mov byte [ebp - 4], 0x19
mov edx, str.cannot_use_operator___with_a_string_argument_with
push eax
lea ecx, [ebp - 0x6e8]
call fcn.0045c570
mov byte [ebp - 4], 0x1a
mov edx, 0x131
push eax
lea ecx, [ebp - 0x68c]
call fcn.004099e0
add esp, 8
lea eax, [ebp - 0x68c]
push 0x52dd98
push eax
call fcn.004ca4fb
lea ecx, [ebp - 0xf0]
call fcn.00459d20
push eax
lea ecx, [ebp - 0x5f0]
call fcn.00402790
mov byte [ebp - 4], 0x12
mov edx, str.cannot_use_operator___with_a_string_argument_with
push eax
lea ecx, [ebp - 0x608]
call fcn.0045c570
mov byte [ebp - 4], 0x13
push eax
mov edx, 0x131
lea ecx, [ebp - 0x470]
call fcn.004099e0
add esp, 8
lea eax, [ebp - 0x470]
push 0x52dd98
push eax
call fcn.004ca4fb
int3