Function at 0x434ed0
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 0x4fc962
push eax
mov eax, 0x1724
mov dword fs:[0], esp
call fcn.004baa10
push esi
push edi
mov edi, ecx
mov dword [ebp - 0x80], edi
mov dword [ebp - 4], 0
mov dword [ebp - 0x108], 0
mov dword [ebp - 4], 1
push ecx
call fcn.0045d410
sub esp, 0x10
mov dword [ebp - 0x108], 1
mov ecx, esp
mov dword [ebp - 0x88], esp
sub esp, 8
mov eax, esp
mov dword [eax], 0
mov dword [eax + 4], 0
call fcn.0045d2c0
add esp, 8
mov byte [ebp - 4], 2
lea eax, [ebp - 0x160]
push eax
call fcn.00429e10
mov esi, eax
xor edx, edx
nop word [eax + eax]
movzx ecx, byte [esi + edx]
push ecx
call fcn.004606a0
mov byte [esi + edx], al
inc edx
cmp edx, 7
jb 0x434f60
push esi
mov ecx, edi
call fcn.004639b0
mov byte [ebp - 4], 1
mov ecx, eax
call fcn.0045cee0
push 0x104
lea eax, [ebp - 0x730]
push 0
push eax
call fcn.004d1ee0
add esp, 0xc
lea eax, [ebp - 0x730]
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 - 0x730]
lea ecx, [ebp - 0x2c8]
call fcn.00463710
add esp, 4
mov byte [ebp - 4], 3
lea eax, [ebp - 0x238]
push eax
call fcn.00432d80
mov esi, eax
xor edx, edx
nop dword [eax]
movzx ecx, byte [esi + edx]
push ecx
call fcn.004606a0
mov byte [esi + edx], al
inc edx
cmp edx, 0xd
jb 0x434fe0
push esi
lea edx, [ebp - 0x2c8]
lea ecx, [ebp - 0x2b0]
call fcn.004635e0
add esp, 4
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x2b0]
call fcn.0045f0a0
push eax
push 0x1000
lea eax, [ebp - 0x1730]
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileSectionNamesA]
lea esi, [ebp - 0x1730]
mov dword [ebp - 0x78], esi
nop dword [eax]
nop word [eax + eax]
mov dword [ebp - 0x65], 0x2c25381a
xor ecx, ecx
mov dword [ebp - 0x61], 0x2f2623
movzx eax, byte [ebp + ecx - 0x65]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x65], al
inc ecx
cmp ecx, 7
jb 0x435050
push 7
lea eax, [ebp - 0x65]
push eax
push esi
call fcn.004dd4de
add esp, 0xc
test eax, eax
jne 0x4361e6
push 0x104
push eax
lea eax, [ebp - 0x5dc]
push eax
call fcn.004d1ee0
add esp, 0xc
lea ecx, [ebp - 0x2b0]
call fcn.0045f0a0
mov edi, eax
lea eax, [ebp - 0x279]
push eax
call fcn.00436430
mov esi, eax
xor edx, edx
nop
movzx ecx, byte [edx + esi]
push ecx
call fcn.004606a0
mov byte [edx + esi], al
inc edx
cmp edx, 4
jb 0x4350b0
push edi
push 0x104
lea eax, [ebp - 0x5dc]
push eax
push 0
push esi
push dword [ebp - 0x78]
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push 0x16
mov byte [ebp - 0x49], 0
call fcn.004606a0
mov byte [ebp - 0xd], al
lea edx, [ebp - 0x2c8]
mov byte [ebp - 0x4a], al
lea ecx, [ebp - 0x300]
lea eax, [ebp - 0x4a]
push eax
call fcn.004635e0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x5dc]
push ecx
mov edx, eax
lea ecx, [ebp - 0x2e0]
call fcn.00463670
add esp, 8
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x300]
call fcn.00402890
lea eax, [ebp - 0x5dc]
push eax
lea ecx, [ebp - 0x178]
call fcn.00402790
mov byte [ebp - 4], 8
push ecx
push 0x2f
lea ecx, [ebp - 0x178]
call fcn.00402730
cmp eax, 0xffffffff
je 0x4351dd
push 0x65
mov byte [ebp - 0x4b], 0
call fcn.004606a0
sub esp, 0x18
mov byte [ebp - 0x4c], al
lea eax, [ebp - 0x4c]
mov dword [ebp - 0x258], esp
mov ecx, esp
push eax
call fcn.00402790
mov byte [ebp - 4], 9
sub esp, 0x18
lea eax, [ebp - 0x178]
mov dword [ebp - 0x248], esp
mov ecx, esp
push eax
call fcn.0045f3c0
mov byte [ebp - 4], 0xa
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x244]
call fcn.0040bd80
add esp, 0x30
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x244]
call fcn.0045e1e0
dec eax
push eax
call fcn.0045e1c0
push eax
lea ecx, [ebp - 0x178]
call fcn.0045f270
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x244]
call fcn.004612b0
push ecx
push 0x5c
lea ecx, [ebp - 0x178]
call fcn.00402730
cmp eax, 0xffffffff
je 0x435274
mov al, byte [ebp - 0xd]
sub esp, 0x18
mov byte [ebp - 0x4e], al
mov ecx, esp
lea eax, [ebp - 0x4e]
mov dword [ebp - 0x24c], esp
mov byte [ebp - 0x4d], 0
push eax
call fcn.00402790
mov byte [ebp - 4], 0xc
sub esp, 0x18
lea eax, [ebp - 0x178]
mov dword [ebp - 0x250], esp
mov ecx, esp
push eax
call fcn.0045f3c0
mov byte [ebp - 4], 0xd
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x238]
call fcn.0040bd80
add esp, 0x30
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x238]
call fcn.0045e1e0
dec eax
push eax
call fcn.0045e1c0
push eax
lea ecx, [ebp - 0x178]
call fcn.0045f270
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x238]
call fcn.004612b0
lea eax, [ebp - 0x3b8]
push eax
call fcn.00436450
mov esi, eax
xor edx, edx
movzx ecx, byte [edx + esi]
push ecx
call fcn.004606a0
mov byte [edx + esi], al
inc edx
cmp edx, 0xf
jb 0x435284
push esi
lea edx, [ebp - 0x2e0]
lea ecx, [ebp - 0x298]
call fcn.004635e0
add esp, 4
mov byte [ebp - 4], 0xf
xor ecx, ecx
mov word [ebp - 0x2b], 0x2838
mov byte [ebp - 0x29], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x2b]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x2b], al
inc ecx
cmp ecx, 2
jb 0x4352c0
lea ecx, [ebp - 0x298]
call fcn.0045f0a0
lea ecx, [ebp - 0x2b]
push ecx
push eax
call fcn.004d5d50
add esp, 8
test eax, eax
je 0x4361b3
push eax
call fcn.004d95d8
lea ecx, [ebp - 0x228]
call fcn.0045d410
mov byte [ebp - 4], 0x10
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x254], esp
sub esp, 8
mov eax, esp
mov dword [eax], 0
mov dword [eax + 4], 0
call fcn.0045d2c0
add esp, 8
mov byte [ebp - 4], 0x11
lea eax, [ebp - 0x178]
push eax
lea ecx, [ebp - 0x228]
call fcn.0045cb40
mov byte [ebp - 4], 0x10
mov ecx, eax
call fcn.0045cee0
lea ecx, [ebp - 0x298]
call fcn.0045f0a0
lea edx, [ebp - 0x7c]
mov ecx, eax
call fcn.004141f0
test eax, eax
jne 0x43615b
lea eax, [ebp - 0x62a]
push eax
call fcn.00436480
mov esi, eax
xor edx, edx
nop dword [eax]
movzx ecx, byte [esi + edx]
push ecx
call fcn.004606a0
mov byte [esi + edx], al
inc edx
cmp edx, 0x4d
jb 0x435380
mov edi, dword [ebp - 0x7c]
lea eax, [ebp - 0x30]
push ecx
push eax
push ecx
mov edx, esi
mov ecx, edi
call fcn.004aa9b0
add esp, 0xc
test eax, eax
jne 0x436154
mov esi, dword [ebp - 0x30]
mov ecx, esi
call fcn.00496250
cmp eax, 0x64
jne 0x43614d
push 0
lea ecx, [ebp - 0x18]
mov byte [ebp - 0x20], 0
call fcn.00460c60
mov byte [ebp - 4], 0x13
xor edx, edx
mov ecx, esi
call fcn.00496540
xorps xmm0, xmm0
mov dword [ebp - 0x54], eax
lea edx, [ebp - 0x54]
mov byte [ebp - 0x98], 0
lea ecx, [ebp - 0x98]
movq qword [ebp - 0x90], xmm0
call fcn.004747d0
mov byte [ebp - 4], 0x14
xor ecx, ecx
mov dword [ebp - 0x41], 0x2b27252e
mov word [ebp - 0x3d], 0x2423
mov byte [ebp - 0x3b], 0
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0x41]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x41], al
inc ecx
cmp ecx, 6
jb 0x435420
mov al, byte [ebp - 0x20]
test al, al
jne 0x435464
push 1
lea ecx, [ebp - 0x1f8]
mov byte [ebp - 0x20], 1
call fcn.00460c60
mov eax, dword [ebp - 0x1f4]
mov esi, dword [ebp - 0x1f8]
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x14], eax
mov al, byte [ebp - 0x20]
jmp 0x435467
mov esi, dword [ebp - 0x18]
cmp al, 1
jne 0x436238
xorps xmm0, xmm0
mov dword [ebp - 0x180], 0
lea edx, [ebp - 0x41]
mov dword [ebp - 0x17c], 0
movups xmmword [ebp - 0x190], xmm0
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x435493
sub edx, ecx
lea eax, [ebp - 0x41]
push edx
push eax
lea ecx, [ebp - 0x190]
call fcn.00402aa0
mov byte [ebp - 4], 0x15
lea eax, [ebp - 0x190]
push eax
mov ecx, esi
call fcn.00466ef0
mov edi, eax
mov byte [ebp - 4], 0x14
mov ecx, dword [ebp - 0x17c]
cmp ecx, 0x10
jb 0x4354fe
mov edx, dword [ebp - 0x190]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4354f4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43628a
push ecx
push edx
call fcn.004b9cb1
add esp, 8
mov dword [ebp - 0x180], 0
mov dword [ebp - 0x17c], 0xf
mov byte [ebp - 0x190], 0
mov byte [ebp - 4], 0x18
mov cl, byte [edi]
mov al, byte [ebp - 0x98]
mov byte [edi], al
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov eax, dword [ebp - 0x90]
mov byte [ebp - 0x98], cl
mov byte [ebp - 0x104], cl
mov ecx, dword [ebp - 0x8c]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0x90], edx
mov dword [ebp - 0x8c], esi
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x90]
push dword [ebp - 0x104]
call fcn.00460940
push 0x7b
mov byte [ebp - 0x25], 0
call fcn.004606a0
xorps xmm0, xmm0
mov byte [ebp - 0xd], al
lea ecx, [ebp - 0x26]
mov byte [ebp - 0x26], al
movups xmmword [ebp - 0x13c], xmm0
mov dword [ebp - 0x12c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x128], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4355a1
sub ecx, edx
lea eax, [ebp - 0x26]
push ecx
push eax
lea ecx, [ebp - 0x13c]
call fcn.00402aa0
mov byte [ebp - 4], 0x19
mov edx, 1
mov ecx, dword [ebp - 0x30]
call fcn.00496540
mov edx, eax
mov dword [ebp - 0x148], 0
mov ecx, edx
mov dword [ebp - 0x144], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x158], xmm0
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4355f0
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x158]
call fcn.00402aa0
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x13c]
cmp dword [ebp - 0x128], 0x10
lea edx, [ebp - 0x158]
mov eax, dword [ebp - 0x13c]
mov esi, dword [ebp - 0x148]
cmovae ecx, eax
cmp dword [ebp - 0x144], 0x10
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x158]
cmovae edx, eax
mov dword [ebp - 0x54], eax
cmp esi, dword [ebp - 0x12c]
jne 0x435697
sub esi, 4
jb 0x435661
nop
mov eax, dword [edx]
cmp eax, dword [ecx]
jne 0x435666
add edx, 4
add ecx, 4
sub esi, 4
jae 0x435650
cmp esi, 0xfffffffc
je 0x435693
mov al, byte [edx]
cmp al, byte [ecx]
jne 0x435697
cmp esi, 0xfffffffd
je 0x435693
mov al, byte [edx + 1]
cmp al, byte [ecx + 1]
jne 0x435697
cmp esi, 0xfffffffe
je 0x435693
mov al, byte [edx + 2]
cmp al, byte [ecx + 2]
jne 0x435697
cmp esi, 0xffffffff
je 0x435693
mov al, byte [edx + 3]
cmp al, byte [ecx + 3]
jne 0x435697
mov dl, 1
jmp 0x435699
xor dl, dl
xorps xmm0, xmm0
mov byte [ebp - 0xd8], 0
lea ecx, [ebp - 0xd8]
movq qword [ebp - 0xd0], xmm0
call fcn.00474870
mov byte [ebp - 4], 0x1b
xor ecx, ecx
mov dword [ebp - 0x5d], 0x3a3e3e22
mov dword [ebp - 0x59], 0x33262405
mov byte [ebp - 0x55], 0
nop
movzx eax, byte [ebp + ecx - 0x5d]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x5d], al
inc ecx
cmp ecx, 8
jb 0x4356d0
mov al, byte [ebp - 0x20]
test al, al
jne 0x435714
push 1
lea ecx, [ebp - 0x208]
mov byte [ebp - 0x20], 1
call fcn.00460c60
mov eax, dword [ebp - 0x204]
mov esi, dword [ebp - 0x208]
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x14], eax
mov al, byte [ebp - 0x20]
jmp 0x435717
mov esi, dword [ebp - 0x18]
cmp al, 1
jne 0x4363d7
xorps xmm0, xmm0
mov dword [ebp - 0x198], 0
lea edx, [ebp - 0x5d]
mov dword [ebp - 0x194], 0
movups xmmword [ebp - 0x1a8], xmm0
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x435743
sub edx, ecx
lea eax, [ebp - 0x5d]
push edx
push eax
lea ecx, [ebp - 0x1a8]
call fcn.00402aa0
mov byte [ebp - 4], 0x1c
lea eax, [ebp - 0x1a8]
push eax
mov ecx, esi
call fcn.00466ef0
mov edi, eax
mov byte [ebp - 4], 0x1b
mov ecx, dword [ebp - 0x194]
cmp ecx, 0x10
jb 0x4357ae
mov edx, dword [ebp - 0x1a8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4357a4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43628a
push ecx
push edx
call fcn.004b9cb1
add esp, 8
mov dword [ebp - 0x198], 0
mov dword [ebp - 0x194], 0xf
mov byte [ebp - 0x1a8], 0
mov byte [ebp - 4], 0x1f
mov cl, byte [edi]
mov al, byte [ebp - 0xd8]
mov byte [edi], al
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov eax, dword [ebp - 0xd0]
mov byte [ebp - 0xd8], cl
mov byte [ebp - 0x140], cl
mov ecx, dword [ebp - 0xcc]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0xd0], edx
mov dword [ebp - 0xcc], esi
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0xd0]
push dword [ebp - 0x140]
call fcn.00460940
mov byte [ebp - 4], 0x19
mov eax, dword [ebp - 0x144]
cmp eax, 0x10
jb 0x435859
mov edx, dword [ebp - 0x54]
lea ecx, [eax + 1]
mov eax, edx
cmp ecx, 0x1000
jb 0x43584f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43628a
push ecx
push edx
call fcn.004b9cb1
add esp, 8
mov dword [ebp - 0x148], 0
mov dword [ebp - 0x144], 0xf
mov byte [ebp - 0x158], 0
mov byte [ebp - 4], 0x13
mov eax, dword [ebp - 0x128]
cmp eax, 0x10
jb 0x4358b1
mov edx, dword [ebp - 0x24]
lea ecx, [eax + 1]
mov eax, edx
cmp ecx, 0x1000
jb 0x4358a7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43628a
push ecx
push edx
call fcn.004b9cb1
add esp, 8
mov ecx, dword [ebp - 0x30]
mov edx, 2
mov dword [ebp - 0x12c], 0
mov dword [ebp - 0x128], 0xf
mov byte [ebp - 0x13c], 0
call fcn.00496540
xorps xmm0, xmm0
mov dword [ebp - 0x24], eax
lea edx, [ebp - 0x24]
mov byte [ebp - 0xb8], 0
lea ecx, [ebp - 0xb8]
movq qword [ebp - 0xb0], xmm0
call fcn.004747d0
mov byte [ebp - 4], 0x20
xor ecx, ecx
mov dword [ebp - 0x35], 0x223e2b3a
mov byte [ebp - 0x31], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x35]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x35], al
inc ecx
cmp ecx, 4
jb 0x435910
mov al, byte [ebp - 0x20]
test al, al
jne 0x435954
push 1
lea ecx, [ebp - 0x210]
mov byte [ebp - 0x20], 1
call fcn.00460c60
mov eax, dword [ebp - 0x20c]
mov esi, dword [ebp - 0x210]
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x14], eax
mov al, byte [ebp - 0x20]
jmp 0x435957
mov esi, dword [ebp - 0x18]
cmp al, 1
jne 0x436385
xorps xmm0, xmm0
mov dword [ebp - 0x1b0], 0
lea edx, [ebp - 0x35]
mov dword [ebp - 0x1ac], 0
movups xmmword [ebp - 0x1c0], xmm0
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x435983
sub edx, ecx
lea eax, [ebp - 0x35]
push edx
push eax
lea ecx, [ebp - 0x1c0]
call fcn.00402aa0
mov byte [ebp - 4], 0x21
lea eax, [ebp - 0x1c0]
push eax
mov ecx, esi
call fcn.00466ef0
mov edi, eax
mov byte [ebp - 4], 0x20
mov ecx, dword [ebp - 0x1ac]
cmp ecx, 0x10
jb 0x4359ee
mov edx, dword [ebp - 0x1c0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4359e4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43628a
push ecx
push edx
call fcn.004b9cb1
add esp, 8
mov dword [ebp - 0x1b0], 0
mov dword [ebp - 0x1ac], 0xf
mov byte [ebp - 0x1c0], 0
mov byte [ebp - 4], 0x24
mov cl, byte [edi]
mov al, byte [ebp - 0xb8]
mov byte [edi], al
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov eax, dword [ebp - 0xb0]
mov byte [ebp - 0xb8], cl
mov byte [ebp - 0x10c], cl
mov ecx, dword [ebp - 0xac]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0xb0], edx
mov dword [ebp - 0xac], esi
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0xb0]
push dword [ebp - 0x10c]
call fcn.00460940
mov al, byte [ebp - 0xd]
lea ecx, [ebp - 0x28]
xorps xmm0, xmm0
mov byte [ebp - 0x27], 0
mov byte [ebp - 0x28], al
lea edx, [ecx + 1]
movups xmmword [ebp - 0x100], xmm0
mov dword [ebp - 0xf0], 0
mov dword [ebp - 0xec], 0
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x435a90
sub ecx, edx
lea eax, [ebp - 0x28]
push ecx
push eax
lea ecx, [ebp - 0x100]
call fcn.00402aa0
mov byte [ebp - 4], 0x25
mov edx, 3
mov ecx, dword [ebp - 0x30]
call fcn.00496540
mov edx, eax
mov dword [ebp - 0x114], 0
mov ecx, edx
mov dword [ebp - 0x110], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x124], xmm0
lea esi, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x435ae0
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x124]
call fcn.00402aa0
mov byte [ebp - 4], 0x26
lea ecx, [ebp - 0x100]
cmp dword [ebp - 0xec], 0x10
lea edx, [ebp - 0x124]
mov eax, dword [ebp - 0x100]
mov esi, dword [ebp - 0x114]
cmovae ecx, eax
cmp dword [ebp - 0x110], 0x10
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0x124]
cmovae edx, eax
mov dword [ebp - 0x24], eax
cmp esi, dword [ebp - 0xf0]
jne 0x435b87
sub esi, 4
jb 0x435b51
nop
mov eax, dword [edx]
cmp eax, dword [ecx]
jne 0x435b56
add edx, 4
add ecx, 4
sub esi, 4
jae 0x435b40
cmp esi, 0xfffffffc
je 0x435b83
mov al, byte [edx]
cmp al, byte [ecx]
jne 0x435b87
cmp esi, 0xfffffffd
je 0x435b83
mov al, byte [edx + 1]
cmp al, byte [ecx + 1]
jne 0x435b87
cmp esi, 0xfffffffe
je 0x435b83
mov al, byte [edx + 2]
cmp al, byte [ecx + 2]
jne 0x435b87
cmp esi, 0xffffffff
je 0x435b83
mov al, byte [edx + 3]
cmp al, byte [ecx + 3]
jne 0x435b87
mov dl, 1
jmp 0x435b89
xor dl, dl
xorps xmm0, xmm0
mov byte [ebp - 0xa8], 0
lea ecx, [ebp - 0xa8]
movq qword [ebp - 0xa0], xmm0
call fcn.00474870
mov byte [ebp - 4], 0x27
xor ecx, ecx
mov dword [ebp - 0x48], 0x3f292f39
mov word [ebp - 0x44], 0x2f38
mov byte [ebp - 0x42], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x48]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x48], al
inc ecx
cmp ecx, 6
jb 0x435bc0
mov al, byte [ebp - 0x20]
test al, al
jne 0x435c04
push 1
lea ecx, [ebp - 0x200]
mov byte [ebp - 0x20], 1
call fcn.00460c60
mov eax, dword [ebp - 0x1fc]
mov esi, dword [ebp - 0x200]
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x14], eax
mov al, byte [ebp - 0x20]
jmp 0x435c07
mov esi, dword [ebp - 0x18]
cmp al, 1
jne 0x436333
xorps xmm0, xmm0
mov dword [ebp - 0x1c8], 0
lea edx, [ebp - 0x48]
mov dword [ebp - 0x1c4], 0
movups xmmword [ebp - 0x1d8], xmm0
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x435c33
sub edx, ecx
lea eax, [ebp - 0x48]
push edx
push eax
lea ecx, [ebp - 0x1d8]
call fcn.00402aa0
mov byte [ebp - 4], 0x28
lea eax, [ebp - 0x1d8]
push eax
mov ecx, esi
call fcn.00466ef0
mov edi, eax
mov byte [ebp - 4], 0x27
mov ecx, dword [ebp - 0x1c4]
cmp ecx, 0x10
jb 0x435c9e
mov edx, dword [ebp - 0x1d8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x435c94
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43628a
push ecx
push edx
call fcn.004b9cb1
add esp, 8
mov dword [ebp - 0x1c8], 0
mov dword [ebp - 0x1c4], 0xf
mov byte [ebp - 0x1d8], 0
mov byte [ebp - 4], 0x2b
mov cl, byte [edi]
mov al, byte [ebp - 0xa8]
mov byte [edi], al
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov eax, dword [ebp - 0xa0]
mov byte [ebp - 0xa8], cl
mov byte [ebp - 0x84], cl
mov ecx, dword [ebp - 0x9c]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0xa0], edx
mov dword [ebp - 0x9c], esi
mov byte [ebp - 4], 0x26
lea ecx, [ebp - 0xa0]
push dword [ebp - 0x84]
call fcn.00460940
mov byte [ebp - 4], 0x25
mov eax, dword [ebp - 0x110]
cmp eax, 0x10
jb 0x435d49
mov edx, dword [ebp - 0x24]
lea ecx, [eax + 1]
mov eax, edx
cmp ecx, 0x1000
jb 0x435d3f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43628a
push ecx
push edx
call fcn.004b9cb1
add esp, 8
mov dword [ebp - 0x114], 0
mov dword [ebp - 0x110], 0xf
mov byte [ebp - 0x124], 0
mov byte [ebp - 4], 0x13
mov eax, dword [ebp - 0xec]
cmp eax, 0x10
jb 0x435da1
mov edx, dword [ebp - 0x54]
lea ecx, [eax + 1]
mov eax, edx
cmp ecx, 0x1000
jb 0x435d97
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43628a
push ecx
push edx
call fcn.004b9cb1
add esp, 8
mov ecx, dword [ebp - 0x30]
mov edx, 4
mov dword [ebp - 0xf0], 0
mov dword [ebp - 0xec], 0xf
mov byte [ebp - 0x100], 0
call fcn.00496540
push eax
call fcn.004dd826
push edx
xorps xmm0, xmm0
mov byte [ebp - 0xc8], 0
push eax
lea ecx, [ebp - 0xc8]
movq qword [ebp - 0xc0], xmm0
call fcn.00474890
add esp, 0xc
mov byte [ebp - 4], 0x2c
xor ecx, ecx
mov dword [ebp - 0x74], 0x233a322f
mov dword [ebp - 0x70], 0x233e2b38
mov dword [ebp - 0x6c], 0x2b0e2425
mov word [ebp - 0x68], 0x2f3e
mov byte [ebp - 0x66], 0
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x74]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x74], al
inc ecx
cmp ecx, 0xe
jb 0x435e20
mov al, byte [ebp - 0x20]
test al, al
jne 0x435e64
push 1
lea ecx, [ebp - 0x218]
mov byte [ebp - 0x20], 1
call fcn.00460c60
mov eax, dword [ebp - 0x214]
mov esi, dword [ebp - 0x218]
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x14], eax
mov al, byte [ebp - 0x20]
jmp 0x435e67
mov esi, dword [ebp - 0x18]
cmp al, 1
jne 0x4362e1
xorps xmm0, xmm0
mov dword [ebp - 0x1e0], 0
lea edx, [ebp - 0x74]
mov dword [ebp - 0x1dc], 0
movups xmmword [ebp - 0x1f0], xmm0
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x435e93
sub edx, ecx
lea eax, [ebp - 0x74]
push edx
push eax
lea ecx, [ebp - 0x1f0]
call fcn.00402aa0
mov byte [ebp - 4], 0x2d
lea eax, [ebp - 0x1f0]
push eax
mov ecx, esi
call fcn.00466ef0
mov edi, eax
mov byte [ebp - 4], 0x2c
mov ecx, dword [ebp - 0x1dc]
cmp ecx, 0x10
jb 0x435efe
mov edx, dword [ebp - 0x1f0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x435ef4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43628a
push ecx
push edx
call fcn.004b9cb1
add esp, 8
mov dword [ebp - 0x1e0], 0
mov dword [ebp - 0x1dc], 0xf
mov byte [ebp - 0x1f0], 0
mov byte [ebp - 4], 0x30
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 - 0x88], 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], 0x13
lea ecx, [ebp - 0xc0]
push dword [ebp - 0x88]
call fcn.00460940
mov edi, dword [ebp - 0x30]
mov edx, 5
mov ecx, edi
call fcn.00496540
sub esp, 0x10
mov dword [ebp - 0x24], eax
mov ecx, esp
mov dword [ebp - 0x25c], esp
xorps xmm0, xmm0
lea edx, [ebp - 0x24]
mov byte [ecx], 0
movq qword [ecx + 8], xmm0
call fcn.004747d0
mov byte [ebp - 4], 0x31
xor ecx, ecx
mov dword [ebp - 0x3a], 0x2f272b24
mov byte [ebp - 0x36], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x3a]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x3a], al
inc ecx
cmp ecx, 4
jb 0x435fb0
mov al, byte [ebp - 0x20]
test al, al
jne 0x435ff4
push 1
lea ecx, [ebp - 0x160]
mov byte [ebp - 0x20], 1
call fcn.00460c60
mov eax, dword [ebp - 0x15c]
mov esi, dword [ebp - 0x160]
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x14], eax
mov al, byte [ebp - 0x20]
jmp 0x435ff7
mov esi, dword [ebp - 0x18]
cmp al, 1
jne 0x43628f
xorps xmm0, xmm0
mov dword [ebp - 0x264], 0
lea edx, [ebp - 0x3a]
mov dword [ebp - 0x260], 0
movups xmmword [ebp - 0x274], xmm0
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x436023
sub edx, ecx
lea eax, [ebp - 0x3a]
push edx
push eax
lea ecx, [ebp - 0x274]
call fcn.00402aa0
mov byte [ebp - 4], 0x32
lea eax, [ebp - 0x274]
push eax
mov ecx, esi
call fcn.00466ef0
mov esi, eax
mov byte [ebp - 4], 0x31
lea ecx, [ebp - 0x274]
call fcn.00402890
mov byte [ebp - 4], 0x13
mov ecx, esi
call fcn.0045cee0
mov edx, 6
mov ecx, edi
call fcn.00496540
mov dword [ebp - 0x24], eax
lea ecx, [ebp - 0xe8]
lea eax, [ebp - 0x24]
push eax
call fcn.00464090
mov byte [ebp - 4], 0x35
lea eax, [ebp - 0x27f]
push eax
call fcn.00429f80
mov esi, eax
xor edx, edx
nop dword [eax]
movzx ecx, byte [edx + esi]
push ecx
call fcn.004606a0
mov byte [edx + esi], al
inc edx
cmp edx, 5
jb 0x4360a0
push esi
lea ecx, [ebp - 0x20]
call fcn.004639b0
mov edi, eax
mov byte [ebp - 4], 0x36
mov dl, byte [edi]
mov cl, byte [ebp - 0xe8]
mov byte [edi], cl
mov eax, dword [ebp - 0xe0]
mov ecx, dword [ebp - 0xdc]
mov byte [ebp - 0xe8], dl
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0xe0], edx
mov dword [ebp - 0xdc], esi
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0xe0]
push dword [ebp - 0xe8]
call fcn.00460940
lea eax, [ebp - 0x178]
push eax
lea ecx, [ebp - 0x228]
call fcn.0045cb40
lea ecx, [ebp - 0x20]
push ecx
mov ecx, eax
call fcn.0045c860
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x18]
push dword [ebp - 0x20]
call fcn.00460940
mov esi, dword [ebp - 0x30]
mov ecx, esi
call fcn.00496250
cmp eax, 0x64
je 0x4353c3
mov edi, dword [ebp - 0x7c]
mov ecx, esi
call fcn.00495ec0
mov ecx, edi
call fcn.00414540
lea eax, [ebp - 0x2e8]
push eax
call fcn.00429e10
mov esi, eax
xor edx, edx
nop dword [eax + eax]
movzx ecx, byte [esi + edx]
push ecx
call fcn.004606a0
mov byte [esi + edx], al
inc edx
cmp edx, 7
jb 0x436170
mov edi, dword [ebp - 0x80]
mov ecx, edi
push esi
call fcn.004639b0
lea ecx, [ebp - 0x228]
push ecx
mov ecx, eax
call fcn.0045c860
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x220]
push dword [ebp - 0x228]
call fcn.00460940
jmp 0x4361b6
mov edi, dword [ebp - 0x80]
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x298]
call fcn.00402890
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x178]
call fcn.00402890
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x2e0]
call fcn.00402890
mov esi, dword [ebp - 0x78]
push esi
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc esi
add esi, eax
mov dword [ebp - 0x78], esi
cmp byte [esi], 0
jne 0x435040
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x2b0]
call fcn.00402890
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x2c8]
call fcn.00402890
mov byte [ebp - 4], 0
lea ecx, [ebp + 8]
call fcn.00402890
mov ecx, dword [ebp - 0xc]
mov eax, edi
pop edi
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret
lea ecx, [ebp - 0x20]
call fcn.00460f50
push eax
lea ecx, [ebp - 0x4c0]
call fcn.00402790
mov byte [ebp - 4], 0x16
mov edx, str.cannot_use_operator___with_a_string_argument_with
push eax
lea ecx, [ebp - 0x4d8]
call fcn.004637a0
mov byte [ebp - 4], 0x17
mov edx, 0x131
push eax
lea ecx, [ebp - 0x3a8]
call fcn.00409a50
add esp, 8
lea eax, [ebp - 0x3a8]
push 0x5366c8
push eax
call fcn.004d172b
call fcn.004d51a0
lea ecx, [ebp - 0x20]
call fcn.00460f50
push eax
lea ecx, [ebp - 0x3d0]
call fcn.00402790
mov byte [ebp - 4], 0x33
mov edx, str.cannot_use_operator___with_a_string_argument_with
push eax
lea ecx, [ebp - 0x3e8]
call fcn.004637a0
mov byte [ebp - 4], 0x34
mov edx, 0x131
push eax
lea ecx, [ebp - 0x338]
call fcn.00409a50
add esp, 8
lea eax, [ebp - 0x338]
push 0x5366c8
push eax
call fcn.004d172b
lea ecx, [ebp - 0x20]
call fcn.00460f50
push eax
lea ecx, [ebp - 0x400]
call fcn.00402790
mov byte [ebp - 4], 0x2e
mov edx, str.cannot_use_operator___with_a_string_argument_with
push eax
lea ecx, [ebp - 0x418]
call fcn.004637a0
mov byte [ebp - 4], 0x2f
mov edx, 0x131
push eax
lea ecx, [ebp - 0x354]
call fcn.00409a50
add esp, 8
lea eax, [ebp - 0x354]
push 0x5366c8
push eax
call fcn.004d172b
lea ecx, [ebp - 0x20]
call fcn.00460f50
push eax
lea ecx, [ebp - 0x430]
call fcn.00402790
mov byte [ebp - 4], 0x29
mov edx, str.cannot_use_operator___with_a_string_argument_with
push eax
lea ecx, [ebp - 0x448]
call fcn.004637a0
mov byte [ebp - 4], 0x2a
mov edx, 0x131
push eax
lea ecx, [ebp - 0x370]
call fcn.00409a50
add esp, 8
lea eax, [ebp - 0x370]
push 0x5366c8
push eax
call fcn.004d172b
lea ecx, [ebp - 0x20]
call fcn.00460f50
push eax
lea ecx, [ebp - 0x460]
call fcn.00402790
mov byte [ebp - 4], 0x22
mov edx, str.cannot_use_operator___with_a_string_argument_with
push eax
lea ecx, [ebp - 0x478]
call fcn.004637a0
mov byte [ebp - 4], 0x23
mov edx, 0x131
push eax
lea ecx, [ebp - 0x38c]
call fcn.00409a50
add esp, 8
lea eax, [ebp - 0x38c]
push 0x5366c8
push eax
call fcn.004d172b
lea ecx, [ebp - 0x20]
call fcn.00460f50
push eax
lea ecx, [ebp - 0x490]
call fcn.00402790
mov byte [ebp - 4], 0x1d
mov edx, str.cannot_use_operator___with_a_string_argument_with
push eax
lea ecx, [ebp - 0x4a8]
call fcn.004637a0
mov byte [ebp - 4], 0x1e
mov edx, 0x131
push eax
lea ecx, [ebp - 0x31c]
call fcn.00409a50
add esp, 8
lea eax, [ebp - 0x31c]
push 0x5366c8
push eax
call fcn.004d172b
int3