Function at 0x435460
Capabilities:
Get common file path
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
mov eax, dword fs:[0]
push 0x4fddb2
push eax
mov eax, 0x1724
mov dword fs:[0], esp
call fcn.004bbd10
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.0045deb0
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.0045dd60
add esp, 8
mov byte [ebp - 4], 2
lea eax, [ebp - 0x160]
push eax
call fcn.0042a3a0
mov esi, eax
xor edx, edx
nop word [eax + eax]
movzx ecx, byte [esi + edx]
push ecx
call fcn.00461130
mov byte [esi + edx], al
inc edx
cmp edx, 7
jb 0x4354f0
push esi
mov ecx, edi
call fcn.00464510
mov byte [ebp - 4], 1
mov ecx, eax
call fcn.0045d980
push 0x104
lea eax, [ebp - 0x730]
push 0
push eax
call fcn.004d31f0
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.00464270
add esp, 4
mov byte [ebp - 4], 3
lea eax, [ebp - 0x238]
push eax
call fcn.00433310
mov esi, eax
xor edx, edx
nop dword [eax]
movzx ecx, byte [esi + edx]
push ecx
call fcn.00461130
mov byte [esi + edx], al
inc edx
cmp edx, 0xd
jb 0x435570
push esi
lea edx, [ebp - 0x2c8]
lea ecx, [ebp - 0x2b0]
call fcn.00464140
add esp, 4
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x2b0]
call fcn.0045fb30
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], 0xb9b0ad8f
xor ecx, ecx
mov dword [ebp - 0x61], 0xbab3b6
movzx eax, byte [ebp + ecx - 0x65]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x65], al
inc ecx
cmp ecx, 7
jb 0x4355e0
push 7
lea eax, [ebp - 0x65]
push eax
push esi
call fcn.004de7ef
add esp, 0xc
test eax, eax
jne 0x436776
push 0x104
push eax
lea eax, [ebp - 0x5dc]
push eax
call fcn.004d31f0
add esp, 0xc
lea ecx, [ebp - 0x2b0]
call fcn.0045fb30
mov edi, eax
lea eax, [ebp - 0x279]
push eax
call fcn.004369c0
mov esi, eax
xor edx, edx
nop
movzx ecx, byte [edx + esi]
push ecx
call fcn.00461130
mov byte [edx + esi], al
inc edx
cmp edx, 4
jb 0x435640
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 0xffffffffffffff83
mov byte [ebp - 0x49], 0
call fcn.00461130
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.00464140
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x5dc]
push ecx
mov edx, eax
lea ecx, [ebp - 0x2e0]
call fcn.004641d0
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 0x43576d
push 0xfffffffffffffff0
mov byte [ebp - 0x4b], 0
call fcn.00461130
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.0045fe50
mov byte [ebp - 4], 0xa
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x244]
call fcn.0040bd90
add esp, 0x30
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x244]
call fcn.0045ec80
dec eax
push eax
call fcn.0045ec60
push eax
lea ecx, [ebp - 0x178]
call fcn.0045fd00
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x244]
call fcn.00461d40
push ecx
push 0x5c
lea ecx, [ebp - 0x178]
call fcn.00402730
cmp eax, 0xffffffff
je 0x435804
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.0045fe50
mov byte [ebp - 4], 0xd
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x238]
call fcn.0040bd90
add esp, 0x30
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x238]
call fcn.0045ec80
dec eax
push eax
call fcn.0045ec60
push eax
lea ecx, [ebp - 0x178]
call fcn.0045fd00
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x238]
call fcn.00461d40
lea eax, [ebp - 0x3b8]
push eax
call fcn.004369e0
mov esi, eax
xor edx, edx
movzx ecx, byte [edx + esi]
push ecx
call fcn.00461130
mov byte [edx + esi], al
inc edx
cmp edx, 0xf
jb 0x435814
push esi
lea edx, [ebp - 0x2e0]
lea ecx, [ebp - 0x298]
call fcn.00464140
add esp, 4
mov byte [ebp - 4], 0xf
xor ecx, ecx
mov word [ebp - 0x2b], 0xbdad
mov byte [ebp - 0x29], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x2b]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x2b], al
inc ecx
cmp ecx, 2
jb 0x435850
lea ecx, [ebp - 0x298]
call fcn.0045fb30
lea ecx, [ebp - 0x2b]
push ecx
push eax
call fcn.004d7060
add esp, 8
test eax, eax
je 0x436743
push eax
call fcn.004da8ee
lea ecx, [ebp - 0x228]
call fcn.0045deb0
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.0045dd60
add esp, 8
mov byte [ebp - 4], 0x11
lea eax, [ebp - 0x178]
push eax
lea ecx, [ebp - 0x228]
call fcn.0045d600
mov byte [ebp - 4], 0x10
mov ecx, eax
call fcn.0045d980
lea ecx, [ebp - 0x298]
call fcn.0045fb30
lea edx, [ebp - 0x7c]
mov ecx, eax
call fcn.00414770
test eax, eax
jne 0x4366eb
lea eax, [ebp - 0x62a]
push eax
call fcn.00436a10
mov esi, eax
xor edx, edx
nop dword [eax]
movzx ecx, byte [esi + edx]
push ecx
call fcn.00461130
mov byte [esi + edx], al
inc edx
cmp edx, 0x4d
jb 0x435910
mov edi, dword [ebp - 0x7c]
lea eax, [ebp - 0x30]
push ecx
push eax
push ecx
mov edx, esi
mov ecx, edi
call fcn.004abcb0
add esp, 0xc
test eax, eax
jne 0x4366e4
mov esi, dword [ebp - 0x30]
mov ecx, esi
call fcn.00497540
cmp eax, 0x64
jne 0x4366dd
push 0
lea ecx, [ebp - 0x18]
mov byte [ebp - 0x20], 0
call fcn.004616f0
mov byte [ebp - 4], 0x13
xor edx, edx
mov ecx, esi
call fcn.00497830
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.00475ab0
mov byte [ebp - 4], 0x14
xor ecx, ecx
mov dword [ebp - 0x41], 0xbeb2b0bb
mov word [ebp - 0x3d], 0xb1b6
mov byte [ebp - 0x3b], 0
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0x41]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x41], al
inc ecx
cmp ecx, 6
jb 0x4359b0
mov al, byte [ebp - 0x20]
test al, al
jne 0x4359f4
push 1
lea ecx, [ebp - 0x1f8]
mov byte [ebp - 0x20], 1
call fcn.004616f0
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 0x4359f7
mov esi, dword [ebp - 0x18]
cmp al, 1
jne 0x4367c8
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 0x435a23
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.00467a90
mov edi, eax
mov byte [ebp - 4], 0x14
mov ecx, dword [ebp - 0x17c]
cmp ecx, 0x10
jb 0x435a8e
mov edx, dword [ebp - 0x190]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x435a84
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43681a
push ecx
push edx
call fcn.004bafb1
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.004613d0
push 0xffffffffffffffee
mov byte [ebp - 0x25], 0
call fcn.00461130
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 0x435b31
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.00497830
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 0x435b80
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 0x435c27
sub esi, 4
jb 0x435bf1
nop
mov eax, dword [edx]
cmp eax, dword [ecx]
jne 0x435bf6
add edx, 4
add ecx, 4
sub esi, 4
jae 0x435be0
cmp esi, 0xfffffffc
je 0x435c23
mov al, byte [edx]
cmp al, byte [ecx]
jne 0x435c27
cmp esi, 0xfffffffd
je 0x435c23
mov al, byte [edx + 1]
cmp al, byte [ecx + 1]
jne 0x435c27
cmp esi, 0xfffffffe
je 0x435c23
mov al, byte [edx + 2]
cmp al, byte [ecx + 2]
jne 0x435c27
cmp esi, 0xffffffff
je 0x435c23
mov al, byte [edx + 3]
cmp al, byte [ecx + 3]
jne 0x435c27
mov dl, 1
jmp 0x435c29
xor dl, dl
xorps xmm0, xmm0
mov byte [ebp - 0xd8], 0
lea ecx, [ebp - 0xd8]
movq qword [ebp - 0xd0], xmm0
call fcn.00475b50
mov byte [ebp - 4], 0x1b
xor ecx, ecx
mov dword [ebp - 0x5d], 0xafababb7
mov dword [ebp - 0x59], 0xa6b3b190
mov byte [ebp - 0x55], 0
nop
movzx eax, byte [ebp + ecx - 0x5d]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x5d], al
inc ecx
cmp ecx, 8
jb 0x435c60
mov al, byte [ebp - 0x20]
test al, al
jne 0x435ca4
push 1
lea ecx, [ebp - 0x208]
mov byte [ebp - 0x20], 1
call fcn.004616f0
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 0x435ca7
mov esi, dword [ebp - 0x18]
cmp al, 1
jne 0x436967
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 0x435cd3
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.00467a90
mov edi, eax
mov byte [ebp - 4], 0x1b
mov ecx, dword [ebp - 0x194]
cmp ecx, 0x10
jb 0x435d3e
mov edx, dword [ebp - 0x1a8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x435d34
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43681a
push ecx
push edx
call fcn.004bafb1
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.004613d0
mov byte [ebp - 4], 0x19
mov eax, dword [ebp - 0x144]
cmp eax, 0x10
jb 0x435de9
mov edx, dword [ebp - 0x54]
lea ecx, [eax + 1]
mov eax, edx
cmp ecx, 0x1000
jb 0x435ddf
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43681a
push ecx
push edx
call fcn.004bafb1
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 0x435e41
mov edx, dword [ebp - 0x24]
lea ecx, [eax + 1]
mov eax, edx
cmp ecx, 0x1000
jb 0x435e37
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43681a
push ecx
push edx
call fcn.004bafb1
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.00497830
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.00475ab0
mov byte [ebp - 4], 0x20
xor ecx, ecx
mov dword [ebp - 0x35], 0xb7abbeaf
mov byte [ebp - 0x31], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x35]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x35], al
inc ecx
cmp ecx, 4
jb 0x435ea0
mov al, byte [ebp - 0x20]
test al, al
jne 0x435ee4
push 1
lea ecx, [ebp - 0x210]
mov byte [ebp - 0x20], 1
call fcn.004616f0
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 0x435ee7
mov esi, dword [ebp - 0x18]
cmp al, 1
jne 0x436915
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 0x435f13
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.00467a90
mov edi, eax
mov byte [ebp - 4], 0x20
mov ecx, dword [ebp - 0x1ac]
cmp ecx, 0x10
jb 0x435f7e
mov edx, dword [ebp - 0x1c0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x435f74
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43681a
push ecx
push edx
call fcn.004bafb1
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.004613d0
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 0x436020
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.00497830
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 0x436070
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 0x436117
sub esi, 4
jb 0x4360e1
nop
mov eax, dword [edx]
cmp eax, dword [ecx]
jne 0x4360e6
add edx, 4
add ecx, 4
sub esi, 4
jae 0x4360d0
cmp esi, 0xfffffffc
je 0x436113
mov al, byte [edx]
cmp al, byte [ecx]
jne 0x436117
cmp esi, 0xfffffffd
je 0x436113
mov al, byte [edx + 1]
cmp al, byte [ecx + 1]
jne 0x436117
cmp esi, 0xfffffffe
je 0x436113
mov al, byte [edx + 2]
cmp al, byte [ecx + 2]
jne 0x436117
cmp esi, 0xffffffff
je 0x436113
mov al, byte [edx + 3]
cmp al, byte [ecx + 3]
jne 0x436117
mov dl, 1
jmp 0x436119
xor dl, dl
xorps xmm0, xmm0
mov byte [ebp - 0xa8], 0
lea ecx, [ebp - 0xa8]
movq qword [ebp - 0xa0], xmm0
call fcn.00475b50
mov byte [ebp - 4], 0x27
xor ecx, ecx
mov dword [ebp - 0x48], 0xaabcbaac
mov word [ebp - 0x44], 0xbaad
mov byte [ebp - 0x42], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x48]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x48], al
inc ecx
cmp ecx, 6
jb 0x436150
mov al, byte [ebp - 0x20]
test al, al
jne 0x436194
push 1
lea ecx, [ebp - 0x200]
mov byte [ebp - 0x20], 1
call fcn.004616f0
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 0x436197
mov esi, dword [ebp - 0x18]
cmp al, 1
jne 0x4368c3
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 0x4361c3
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.00467a90
mov edi, eax
mov byte [ebp - 4], 0x27
mov ecx, dword [ebp - 0x1c4]
cmp ecx, 0x10
jb 0x43622e
mov edx, dword [ebp - 0x1d8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x436224
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43681a
push ecx
push edx
call fcn.004bafb1
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.004613d0
mov byte [ebp - 4], 0x25
mov eax, dword [ebp - 0x110]
cmp eax, 0x10
jb 0x4362d9
mov edx, dword [ebp - 0x24]
lea ecx, [eax + 1]
mov eax, edx
cmp ecx, 0x1000
jb 0x4362cf
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43681a
push ecx
push edx
call fcn.004bafb1
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 0x436331
mov edx, dword [ebp - 0x54]
lea ecx, [eax + 1]
mov eax, edx
cmp ecx, 0x1000
jb 0x436327
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43681a
push ecx
push edx
call fcn.004bafb1
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.00497830
push eax
call fcn.004deb37
push edx
xorps xmm0, xmm0
mov byte [ebp - 0xc8], 0
push eax
lea ecx, [ebp - 0xc8]
movq qword [ebp - 0xc0], xmm0
call fcn.00475b70
add esp, 0xc
mov byte [ebp - 4], 0x2c
xor ecx, ecx
mov dword [ebp - 0x74], 0xb6afa7ba
mov dword [ebp - 0x70], 0xb6abbead
mov dword [ebp - 0x6c], 0xbe9bb1b0
mov word [ebp - 0x68], 0xbaab
mov byte [ebp - 0x66], 0
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x74]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x74], al
inc ecx
cmp ecx, 0xe
jb 0x4363b0
mov al, byte [ebp - 0x20]
test al, al
jne 0x4363f4
push 1
lea ecx, [ebp - 0x218]
mov byte [ebp - 0x20], 1
call fcn.004616f0
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 0x4363f7
mov esi, dword [ebp - 0x18]
cmp al, 1
jne 0x436871
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 0x436423
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.00467a90
mov edi, eax
mov byte [ebp - 4], 0x2c
mov ecx, dword [ebp - 0x1dc]
cmp ecx, 0x10
jb 0x43648e
mov edx, dword [ebp - 0x1f0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x436484
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43681a
push ecx
push edx
call fcn.004bafb1
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.004613d0
mov edi, dword [ebp - 0x30]
mov edx, 5
mov ecx, edi
call fcn.00497830
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.00475ab0
mov byte [ebp - 4], 0x31
xor ecx, ecx
mov dword [ebp - 0x3a], 0xbab2beb1
mov byte [ebp - 0x36], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x3a]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x3a], al
inc ecx
cmp ecx, 4
jb 0x436540
mov al, byte [ebp - 0x20]
test al, al
jne 0x436584
push 1
lea ecx, [ebp - 0x160]
mov byte [ebp - 0x20], 1
call fcn.004616f0
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 0x436587
mov esi, dword [ebp - 0x18]
cmp al, 1
jne 0x43681f
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 0x4365b3
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.00467a90
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.0045d980
mov edx, 6
mov ecx, edi
call fcn.00497830
mov dword [ebp - 0x24], eax
lea ecx, [ebp - 0xe8]
lea eax, [ebp - 0x24]
push eax
call fcn.00464bf0
mov byte [ebp - 4], 0x35
lea eax, [ebp - 0x27f]
push eax
call fcn.0042a510
mov esi, eax
xor edx, edx
nop dword [eax]
movzx ecx, byte [edx + esi]
push ecx
call fcn.00461130
mov byte [edx + esi], al
inc edx
cmp edx, 5
jb 0x436630
push esi
lea ecx, [ebp - 0x20]
call fcn.00464510
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.004613d0
lea eax, [ebp - 0x178]
push eax
lea ecx, [ebp - 0x228]
call fcn.0045d600
lea ecx, [ebp - 0x20]
push ecx
mov ecx, eax
call fcn.0045d320
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x18]
push dword [ebp - 0x20]
call fcn.004613d0
mov esi, dword [ebp - 0x30]
mov ecx, esi
call fcn.00497540
cmp eax, 0x64
je 0x435953
mov edi, dword [ebp - 0x7c]
mov ecx, esi
call fcn.004971b0
mov ecx, edi
call fcn.00414ac0
lea eax, [ebp - 0x2e8]
push eax
call fcn.0042a3a0
mov esi, eax
xor edx, edx
nop dword [eax + eax]
movzx ecx, byte [esi + edx]
push ecx
call fcn.00461130
mov byte [esi + edx], al
inc edx
cmp edx, 7
jb 0x436700
mov edi, dword [ebp - 0x80]
mov ecx, edi
push esi
call fcn.00464510
lea ecx, [ebp - 0x228]
push ecx
mov ecx, eax
call fcn.0045d320
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x220]
push dword [ebp - 0x228]
call fcn.004613d0
jmp 0x436746
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 0x4355d0
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.004619e0
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.00464300
mov byte [ebp - 4], 0x17
mov edx, 0x131
push eax
lea ecx, [ebp - 0x3a8]
call fcn.00409a60
add esp, 8
lea eax, [ebp - 0x3a8]
push 0x537a38
push eax
call fcn.004d2a3b
call fcn.004d64b0
lea ecx, [ebp - 0x20]
call fcn.004619e0
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.00464300
mov byte [ebp - 4], 0x34
mov edx, 0x131
push eax
lea ecx, [ebp - 0x338]
call fcn.00409a60
add esp, 8
lea eax, [ebp - 0x338]
push 0x537a38
push eax
call fcn.004d2a3b
lea ecx, [ebp - 0x20]
call fcn.004619e0
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.00464300
mov byte [ebp - 4], 0x2f
mov edx, 0x131
push eax
lea ecx, [ebp - 0x354]
call fcn.00409a60
add esp, 8
lea eax, [ebp - 0x354]
push 0x537a38
push eax
call fcn.004d2a3b
lea ecx, [ebp - 0x20]
call fcn.004619e0
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.00464300
mov byte [ebp - 4], 0x2a
mov edx, 0x131
push eax
lea ecx, [ebp - 0x370]
call fcn.00409a60
add esp, 8
lea eax, [ebp - 0x370]
push 0x537a38
push eax
call fcn.004d2a3b
lea ecx, [ebp - 0x20]
call fcn.004619e0
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.00464300
mov byte [ebp - 4], 0x23
mov edx, 0x131
push eax
lea ecx, [ebp - 0x38c]
call fcn.00409a60
add esp, 8
lea eax, [ebp - 0x38c]
push 0x537a38
push eax
call fcn.004d2a3b
lea ecx, [ebp - 0x20]
call fcn.004619e0
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.00464300
mov byte [ebp - 4], 0x1e
mov edx, 0x131
push eax
lea ecx, [ebp - 0x31c]
call fcn.00409a60
add esp, 8
lea eax, [ebp - 0x31c]
push 0x537a38
push eax
call fcn.004d2a3b
int3