Function at 0x436520
Capabilities:
Contain obfuscated stackstrings
Get common file path
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
mov eax, dword fs:[0]
push 0x4fcb39
push eax
mov eax, 0x14c0
mov dword fs:[0], esp
call fcn.004baa10
push esi
mov esi, ecx
push edi
mov dword [ebp - 0xa8], esi
mov dword [ebp - 4], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 4], 1
lea ecx, [esi + 8]
push 0
mov byte [esi], 0
call fcn.00460c60
mov byte [ebp - 4], 1
sub esp, 8
mov dword [ebp - 0x14], 1
mov eax, esp
lea ecx, [ebp - 0x84]
mov dword [eax], 0
mov dword [eax + 4], 0
call fcn.0045d2c0
add esp, 8
mov byte [ebp - 4], 3
xor ecx, ecx
mov dword [ebp - 0x1c], 0x3e392322
mov dword [ebp - 0x18], 0x333825
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x1c]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x1c], al
inc ecx
cmp ecx, 7
jb 0x4365b0
lea eax, [ebp - 0x1c]
mov ecx, esi
push eax
call fcn.004639b0
mov edi, eax
mov byte [ebp - 4], 4
mov dl, byte [edi]
mov cl, byte [ebp - 0x84]
mov byte [edi], cl
mov eax, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0x78]
mov byte [ebp - 0x84], dl
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0x7c], edx
mov dword [ebp - 0x78], esi
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x7c]
push dword [ebp - 0x84]
call fcn.00460940
push 0x104
lea eax, [ebp - 0x444]
push 0
push eax
call fcn.004d1ee0
add esp, 0xc
lea eax, [ebp - 0x444]
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 - 0x444]
lea ecx, [ebp - 0x214]
call fcn.00463710
add esp, 4
mov byte [ebp - 4], 5
xor ecx, ecx
mov dword [ebp - 0x44], 0x25383a16
mov dword [ebp - 0x40], 0x2f26232c
mov dword [ebp - 0x3c], 0x24236439
mov word [ebp - 0x38], 0x23
movzx eax, byte [ebp + ecx - 0x44]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x44], al
inc ecx
cmp ecx, 0xd
jb 0x436674
lea eax, [ebp - 0x44]
push eax
lea edx, [ebp - 0x214]
lea ecx, [ebp - 0x1e4]
call fcn.004635e0
add esp, 4
mov byte [ebp - 4], 6
lea eax, [ebp - 0x1e4]
cmp dword [ebp - 0x1d0], 0x10
cmovae eax, dword [ebp - 0x1e4]
push eax
push 0x1000
lea eax, [ebp - 0x14cc]
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileSectionNamesA]
lea esi, [ebp - 0x14cc]
mov dword [ebp - 0xac], esi
nop dword [eax + eax]
mov dword [ebp - 0x54], 0x2c25381a
xor ecx, ecx
mov dword [ebp - 0x50], 0x2f2623
movzx eax, byte [ebp + ecx - 0x54]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x54], al
inc ecx
cmp ecx, 7
jb 0x4366f0
push 7
lea eax, [ebp - 0x54]
push eax
push esi
call fcn.004dd4de
add esp, 0xc
test eax, eax
jne 0x4373be
push 0x104
push eax
lea eax, [ebp - 0x340]
push eax
call fcn.004d1ee0
add esp, 0xc
mov dword [ebp - 0x19], 0x223e2b1a
cmp dword [ebp - 0x1d0], 0x10
lea edx, [ebp - 0x1e4]
mov byte [ebp - 0x15], 0
cmovae edx, dword [ebp - 0x1e4]
xor ecx, ecx
movzx eax, byte [ebp + ecx - 0x19]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x19], al
inc ecx
cmp ecx, 4
jb 0x436752
push edx
push 0x104
lea eax, [ebp - 0x340]
push eax
push 0
lea eax, [ebp - 0x19]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push 0x16
mov byte [ebp - 0x1e], 0
call fcn.004606a0
mov byte [ebp - 0xd], al
mov byte [ebp - 0x1f], al
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x1f]
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4367a0
sub ecx, edx
mov eax, closesocket
mov edx, dword [ebp - 0x204]
sub eax, edx
cmp eax, ecx
jb 0x437446
cmp dword [ebp - 0x200], 0x10
lea eax, [ebp - 0x214]
push ecx
cmovae eax, dword [ebp - 0x214]
lea ecx, [ebp - 0x1f]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0xa4]
lea ecx, [ebp - 0x23c]
call fcn.00467530
mov esi, dword [ebp - 0x14]
lea eax, [ebp - 0x340]
or esi, 0x10
lea edx, [ebp - 0x23c]
push eax
lea ecx, [ebp - 0x1fc]
mov dword [ebp - 0x14], esi
call fcn.00463670
add esp, 4
mov byte [ebp - 4], 8
and esi, 0xffffffef
mov dword [ebp - 0x14], esi
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x23c]
call fcn.00402890
xorps xmm0, xmm0
mov dword [ebp - 0x8c], 0
lea ecx, [ebp - 0x340]
mov dword [ebp - 0x88], 0
movups xmmword [ebp - 0x9c], xmm0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x436850
sub ecx, edx
lea eax, [ebp - 0x340]
push ecx
push eax
lea ecx, [ebp - 0x9c]
call fcn.00402aa0
mov byte [ebp - 4], 0xa
lea edi, [ebp - 0x9c]
cmp dword [ebp - 0x88], 0x10
mov esi, dword [ebp - 0x8c]
cmovae edi, dword [ebp - 0x9c]
test esi, esi
je 0x43698d
push esi
push 0x2f
push edi
call fcn.004d36d0
add esp, 0xc
test eax, eax
je 0x43698d
sub eax, edi
cmp eax, 0xffffffff
je 0x43698d
push 0x65
mov byte [ebp - 0x20], 0
call fcn.004606a0
sub esp, 0x18
mov byte [ebp - 0x21], al
mov edx, esp
mov dword [ebp - 0x220], esp
xorps xmm0, xmm0
lea ecx, [ebp - 0x21]
lea esi, [ecx + 1]
movups xmmword [edx], xmm0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4368e4
sub ecx, esi
lea eax, [ebp - 0x21]
push ecx
push eax
mov ecx, edx
call fcn.00402aa0
mov byte [ebp - 4], 0xb
sub esp, 0x18
lea eax, [ebp - 0x9c]
mov dword [ebp - 0x21c], esp
mov ecx, esp
push eax
call fcn.0045f3c0
mov byte [ebp - 4], 0xc
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x1b4]
call fcn.0040bd80
add esp, 0x30
mov byte [ebp - 4], 0xd
mov eax, 0x2aaaaaab
mov ecx, dword [ebp - 0x1b0]
mov esi, dword [ebp - 0x1b4]
sub ecx, esi
imul ecx
lea ecx, [ebp - 0x9c]
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea eax, [eax + eax*2]
lea eax, [eax - 3]
lea eax, [esi + eax*8]
cmp ecx, eax
je 0x436978
cmp dword [eax + 0x14], 0x10
mov ecx, dword [eax + 0x10]
jb 0x43696b
mov eax, dword [eax]
push ecx
push eax
lea ecx, [ebp - 0x9c]
call fcn.0045f110
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x1b4]
call fcn.004612b0
mov esi, dword [ebp - 0x8c]
cmp dword [ebp - 0x88], 0x10
lea edi, [ebp - 0x9c]
cmovae edi, dword [ebp - 0x9c]
test esi, esi
je 0x436a8e
push esi
push 0x5c
push edi
call fcn.004d36d0
add esp, 0xc
test eax, eax
je 0x436a8e
sub eax, edi
cmp eax, 0xffffffff
je 0x436a8e
mov al, byte [ebp - 0xd]
lea ecx, [ebp - 0x23]
sub esp, 0x18
mov byte [ebp - 0x22], 0
mov edx, esp
mov byte [ebp - 0x23], al
xorps xmm0, xmm0
mov dword [ebp - 0x224], esp
lea esi, [ecx + 1]
movups xmmword [edx], xmm0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4369f7
sub ecx, esi
lea eax, [ebp - 0x23]
push ecx
push eax
mov ecx, edx
call fcn.00402aa0
mov byte [ebp - 4], 0xe
sub esp, 0x18
lea eax, [ebp - 0x9c]
mov dword [ebp - 0x218], esp
mov ecx, esp
push eax
call fcn.0045f3c0
mov byte [ebp - 4], 0xf
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x44]
call fcn.0040bd80
add esp, 0x30
mov byte [ebp - 4], 0x10
mov eax, 0x2aaaaaab
mov ecx, dword [ebp - 0x40]
mov esi, dword [ebp - 0x44]
sub ecx, esi
imul ecx
lea ecx, [ebp - 0x9c]
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea eax, [eax + eax*2]
lea eax, [eax - 3]
lea eax, [esi + eax*8]
cmp ecx, eax
je 0x436a82
cmp dword [eax + 0x14], 0x10
mov ecx, dword [eax + 0x10]
jb 0x436a75
mov eax, dword [eax]
push ecx
push eax
lea ecx, [ebp - 0x9c]
call fcn.0045f110
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x44]
call fcn.004612b0
mov dword [ebp - 0x63], 0x2b263a16
xor ecx, ecx
mov dword [ebp - 0x5f], 0x64392f29
mov dword [ebp - 0x5b], 0x23263b39
mov word [ebp - 0x57], 0x2f3e
mov byte [ebp - 0x55], 0
nop
movzx eax, byte [ebp + ecx - 0x63]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x63], al
inc ecx
cmp ecx, 0xe
jb 0x436ab0
lea eax, [ebp - 0x63]
push eax
lea edx, [ebp - 0x1fc]
lea ecx, [ebp - 0x1cc]
call fcn.004635e0
add esp, 4
mov byte [ebp - 4], 0x11
xor ecx, ecx
mov word [ebp - 0x28], 0x2838
mov byte [ebp - 0x26], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x28]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x28], al
inc ecx
cmp ecx, 2
jb 0x436af0
cmp dword [ebp - 0x1b8], 0x10
lea ecx, [ebp - 0x28]
lea eax, [ebp - 0x1cc]
cmovae eax, dword [ebp - 0x1cc]
push ecx
push eax
call fcn.004d5d50
add esp, 8
test eax, eax
je 0x4372f7
push eax
call fcn.004d95d8
add esp, 4
mov byte [ebp - 0x10c], 0
lea ecx, [ebp - 0x104]
push 0
call fcn.00460c60
mov byte [ebp - 4], 0x13
sub esp, 8
mov eax, esp
lea ecx, [ebp - 0xd8]
mov dword [eax], 0
mov dword [eax + 4], 0
call fcn.0045d2c0
add esp, 8
mov byte [ebp - 4], 0x14
lea eax, [ebp - 0x9c]
push eax
lea ecx, [ebp - 0x10c]
call fcn.0045cb40
mov edi, eax
mov byte [ebp - 4], 0x15
mov dl, byte [edi]
mov cl, byte [ebp - 0xd8]
mov byte [edi], cl
mov eax, dword [ebp - 0xd0]
mov ecx, dword [ebp - 0xcc]
mov byte [ebp - 0xd8], dl
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0xd0], edx
mov dword [ebp - 0xcc], esi
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0xd0]
push dword [ebp - 0xd8]
call fcn.00460940
cmp dword [ebp - 0x1b8], 0x10
lea ecx, [ebp - 0x1cc]
lea edx, [ebp - 0xa0]
cmovae ecx, dword [ebp - 0x1cc]
call fcn.004141f0
test eax, eax
jne 0x437299
lea eax, [ebp - 0x4c9]
push eax
call fcn.004374b0
mov esi, eax
xor edx, edx
nop dword [eax + eax]
movzx ecx, byte [edx + esi]
push ecx
call fcn.004606a0
mov byte [edx + esi], al
inc edx
cmp edx, 0x84
jb 0x436c10
push ecx
lea eax, [ebp - 0xb0]
mov edx, esi
mov esi, dword [ebp - 0xa0]
push eax
push ecx
mov ecx, esi
call fcn.004aa9b0
add esp, 0xc
test eax, eax
jne 0x437292
mov edi, dword [ebp - 0xb0]
mov ecx, edi
call fcn.00496250
cmp eax, 0x64
jne 0x43728b
push 0x63
call fcn.004606a0
mov byte [ebp - 0xd], al
nop dword [eax]
xor edx, edx
mov ecx, edi
call fcn.00496540
mov edx, 1
mov ecx, edi
mov esi, eax
call fcn.00496540
mov ecx, esi
mov dword [ebp - 0xb8], eax
mov al, byte [ebp - 0xd]
xorps xmm0, xmm0
mov byte [ebp - 0x24], 0
mov byte [ebp - 0x25], al
movups xmmword [ebp - 0x124], xmm0
mov dword [ebp - 0x114], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x110], 0
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x436cc0
sub ecx, edx
push ecx
push esi
lea ecx, [ebp - 0x124]
call fcn.00402aa0
mov byte [ebp - 4], 0x16
xor ecx, ecx
movaps xmm0, xmmword [0x526d20]
movups xmmword [ebp - 0x17e], xmm0
mov dword [ebp - 0x15e], 0x232a626a
movaps xmm0, xmmword [0x526050]
movups xmmword [ebp - 0x16e], xmm0
mov dword [ebp - 0x15a], 0x776a2a2e
mov word [ebp - 0x156], 0x6a
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x17e]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x17e], al
inc ecx
cmp ecx, 0x29
jb 0x436d20
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x17e]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x436d48
sub ecx, edx
lea eax, [ebp - 0x17e]
push ecx
push eax
push ecx
lea ecx, [ebp - 0x124]
call fcn.00468490
mov esi, dword [ebp - 0x14]
xorps xmm0, xmm0
movups xmmword [ebp - 0x1a0], xmm0
mov dword [ebp - 0x190], 0
or esi, 2
mov dword [ebp - 0x18c], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x1a0], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x190], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov dword [ebp - 0x14], esi
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x25]
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x436dc0
sub ecx, edx
lea eax, [ebp - 0x25]
push ecx
push eax
lea ecx, [ebp - 0x1a0]
call fcn.00461960
mov dword [ebp - 0xe8], 0
lea edx, [ebp - 0xf8]
mov dword [ebp - 0xe4], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0xf8], xmm0
push ecx
movups xmm0, xmmword [eax]
or esi, 4
movups xmmword [ebp - 0xf8], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0xe8], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0xb4]
mov dword [ebp - 0x14], esi
cmp dword [ebp - 0xe4], 0x10
push eax
cmovae edx, dword [ebp - 0xf8]
push ecx
mov ecx, dword [ebp - 0xa0]
call fcn.004aa9b0
add esp, 0xc
test eax, eax
sete byte [ebp - 0x1d]
and esi, 0xfffffffb
mov dword [ebp - 0x14], esi
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0xf8]
call fcn.00402890
and esi, 0xfffffffd
mov dword [ebp - 0x14], esi
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x1a0]
call fcn.00402890
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x110]
cmp ecx, 0x10
jb 0x436ebe
mov edx, dword [ebp - 0x124]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x436eb4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43744b
push ecx
push edx
call fcn.004b9cb1
add esp, 8
cmp byte [ebp - 0x1d], 0
mov dword [ebp - 0x114], 0
mov dword [ebp - 0x110], 0xf
mov byte [ebp - 0x124], 0
je 0x437275
mov esi, dword [ebp - 0xb4]
mov ecx, esi
call fcn.00496250
cmp eax, 0x64
jne 0x437275
nop dword [eax]
xor edx, edx
mov ecx, esi
call fcn.00496540
push 0
lea ecx, [ebp - 0x6c]
mov dword [ebp - 0xdc], eax
mov byte [ebp - 0x74], 0
call fcn.00460c60
mov byte [ebp - 4], 0x1a
xorps xmm0, xmm0
lea edx, [ebp - 0xdc]
mov byte [ebp - 0xc8], 0
lea ecx, [ebp - 0xc8]
movq qword [ebp - 0xc0], xmm0
call fcn.004747d0
mov byte [ebp - 4], 0x1b
xor ecx, ecx
mov dword [ebp - 0x2c], 0x26383f
movzx eax, byte [ebp + ecx - 0x2c]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x2c], al
inc ecx
cmp ecx, 3
jb 0x436f51
mov al, byte [ebp - 0x74]
test al, al
jne 0x436f95
push 1
lea ecx, [ebp - 0x1a8]
mov byte [ebp - 0x74], 1
call fcn.00460c60
mov eax, dword [ebp - 0x1a4]
mov esi, dword [ebp - 0x1a8]
mov dword [ebp - 0x6c], esi
mov dword [ebp - 0x68], eax
mov al, byte [ebp - 0x74]
jmp 0x436f98
mov esi, dword [ebp - 0x6c]
cmp al, 1
jne 0x437417
xorps xmm0, xmm0
mov dword [ebp - 0x12c], 0
lea edx, [ebp - 0x2c]
mov dword [ebp - 0x128], 0
movups xmmword [ebp - 0x13c], xmm0
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x436fc4
sub edx, ecx
lea eax, [ebp - 0x2c]
push edx
push eax
lea ecx, [ebp - 0x13c]
call fcn.00402aa0
mov byte [ebp - 4], 0x1c
lea eax, [ebp - 0x13c]
push eax
mov ecx, esi
call fcn.00466ef0
mov edi, eax
mov byte [ebp - 4], 0x1b
mov ecx, dword [ebp - 0x128]
cmp ecx, 0x10
jb 0x43702f
mov edx, dword [ebp - 0x13c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x437025
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43744b
push ecx
push edx
call fcn.004b9cb1
add esp, 8
mov dword [ebp - 0x12c], 0
mov dword [ebp - 0x128], 0xf
mov byte [ebp - 0x13c], 0
mov byte [ebp - 4], 0x1f
mov cl, byte [edi]
mov al, byte [ebp - 0xc8]
mov byte [edi], al
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov eax, dword [ebp - 0xc0]
mov byte [ebp - 0xc8], cl
mov byte [ebp - 0xe0], cl
mov ecx, dword [ebp - 0xbc]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0xc0], edx
mov dword [ebp - 0xbc], esi
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0xc0]
push dword [ebp - 0xe0]
call fcn.00460940
push dword [ebp - 0xb8]
call fcn.004dd826
add esp, 4
push 0
push 0xf4240
push edx
push eax
call fcn.004f54a0
push edx
xorps xmm0, xmm0
mov byte [ebp - 0x84], 0
push eax
lea ecx, [ebp - 0x84]
movq qword [ebp - 0x7c], xmm0
call fcn.00474890
add esp, 8
mov byte [ebp - 4], 0x20
xor ecx, ecx
mov dword [ebp - 0x31], 0x2f27233e
mov byte [ebp - 0x2d], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x31]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x31], al
inc ecx
cmp ecx, 4
jb 0x4370f0
mov al, byte [ebp - 0x74]
test al, al
jne 0x437134
push 1
lea ecx, [ebp - 0x188]
mov byte [ebp - 0x74], 1
call fcn.00460c60
mov eax, dword [ebp - 0x184]
mov esi, dword [ebp - 0x188]
mov dword [ebp - 0x6c], esi
mov dword [ebp - 0x68], eax
mov al, byte [ebp - 0x74]
jmp 0x437137
mov esi, dword [ebp - 0x6c]
cmp al, 1
jne 0x437450
xorps xmm0, xmm0
mov dword [ebp - 0x144], 0
lea edx, [ebp - 0x31]
mov dword [ebp - 0x140], 0
movups xmmword [ebp - 0x154], xmm0
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x437163
sub edx, ecx
lea eax, [ebp - 0x31]
push edx
push eax
lea ecx, [ebp - 0x154]
call fcn.00402aa0
mov byte [ebp - 4], 0x21
lea eax, [ebp - 0x154]
push eax
mov ecx, esi
call fcn.00466ef0
mov edi, eax
mov byte [ebp - 4], 0x20
mov ecx, dword [ebp - 0x140]
cmp ecx, 0x10
jb 0x4371ce
mov edx, dword [ebp - 0x154]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4371c4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43744b
push ecx
push edx
call fcn.004b9cb1
add esp, 8
mov dword [ebp - 0x144], 0
mov dword [ebp - 0x140], 0xf
mov byte [ebp - 0x154], 0
mov byte [ebp - 4], 0x24
mov cl, byte [edi]
mov al, byte [ebp - 0x84]
mov byte [edi], al
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov eax, dword [ebp - 0x7c]
mov byte [ebp - 0x84], cl
mov byte [ebp - 0xa4], cl
mov ecx, dword [ebp - 0x78]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0x7c], edx
mov dword [ebp - 0x78], esi
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x7c]
push dword [ebp - 0xa4]
call fcn.00460940
lea eax, [ebp - 0x9c]
push eax
lea ecx, [ebp - 0x10c]
call fcn.0045cb40
lea ecx, [ebp - 0x74]
push ecx
mov ecx, eax
call fcn.0045c860
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x6c]
push dword [ebp - 0x74]
call fcn.00460940
mov esi, dword [ebp - 0xb4]
mov ecx, esi
call fcn.00496250
cmp eax, 0x64
je 0x436f00
mov edi, dword [ebp - 0xb0]
mov ecx, edi
call fcn.00496250
cmp eax, 0x64
je 0x436c70
mov esi, dword [ebp - 0xa0]
mov ecx, edi
call fcn.00495ec0
mov ecx, esi
call fcn.00414540
mov dword [ebp - 0x4c], 0x3e392322
xor ecx, ecx
mov dword [ebp - 0x48], 0x333825
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x4c]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x4c], al
inc ecx
cmp ecx, 7
jb 0x4372b0
mov ecx, dword [ebp - 0xa8]
lea eax, [ebp - 0x4c]
push eax
call fcn.004639b0
lea ecx, [ebp - 0x10c]
push ecx
mov ecx, eax
call fcn.0045c860
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x104]
push dword [ebp - 0x10c]
call fcn.00460940
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x1cc]
call fcn.00402890
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x88]
cmp ecx, 0x10
jb 0x437344
mov edx, dword [ebp - 0x9c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43733a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43744b
push ecx
push edx
call fcn.004b9cb1
add esp, 8
mov dword [ebp - 0x8c], 0
mov dword [ebp - 0x88], 0xf
mov byte [ebp - 0x9c], 0
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x1e8]
cmp ecx, 0x10
jb 0x43739d
mov edx, dword [ebp - 0x1fc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x437393
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43744b
push ecx
push edx
call fcn.004b9cb1
add esp, 8
mov esi, dword [ebp - 0xac]
mov dword [ebp - 0x1ec], 0
mov dword [ebp - 0x1e8], 0xf
mov byte [ebp - 0x1fc], 0
push esi
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc esi
add esi, eax
mov dword [ebp - 0xac], esi
cmp byte [esi], 0
jne 0x4366e0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x1e4]
call fcn.00402890
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x214]
call fcn.00402890
mov byte [ebp - 4], 0
lea ecx, [ebp + 8]
call fcn.00402890
mov eax, dword [ebp - 0xa8]
mov ecx, dword [ebp - 0xc]
pop edi
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret
lea ecx, [ebp - 0x74]
call fcn.00460f50
push eax
lea ecx, [ebp - 0x23c]
call fcn.00402790
mov byte [ebp - 4], 0x1d
mov edx, str.cannot_use_operator___with_a_string_argument_with
push eax
lea ecx, [ebp - 0x1a0]
call fcn.004637a0
mov byte [ebp - 4], 0x1e
jmp 0x43747d
call fcn.00402210
call fcn.004d51a0
lea ecx, [ebp - 0x74]
call fcn.00460f50
push eax
lea ecx, [ebp - 0x23c]
call fcn.00402790
mov byte [ebp - 4], 0x22
mov edx, str.cannot_use_operator___with_a_string_argument_with
push eax
lea ecx, [ebp - 0x1a0]
call fcn.004637a0
mov byte [ebp - 4], 0x23
push eax
mov edx, 0x131
lea ecx, [ebp - 0xfc]
call fcn.00409a50
add esp, 8
lea eax, [ebp - 0xfc]
push 0x5366c8
push eax
call fcn.004d172b
int3