Function at 0x449f80
Capabilities:
Authenticate hmac
Contain obfuscated stackstrings
Encode data using base64
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 0x52c94a
push eax
mov eax, 0x1834
mov dword fs:[0], esp
call fcn.004e7770
push esi
mov esi, ecx
push edi
mov dword [ebp - 0x128], esi
mov dword [ebp - 4], 0
mov dword [ebp - 0xa4], 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 - 0xa4], 1
mov eax, esp
lea ecx, [ebp - 0x1b8]
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 - 0x70], 0x43
mov edi, 0xf
mov byte [ebp - 0x6f], 0x4b
mov byte [ebp - 0x6e], 0x4a
mov byte [ebp - 0x6d], 0x44
mov byte [ebp - 0x6c], 0x46
mov byte [ebp - 0x6b], 0x41
mov byte [ebp - 0x6a], 0x5a
mov byte [ebp - 0x69], 0x21
mov al, byte [ebp - 0x70]
mov dword [ebp - 0x34], edx
mov al, byte [ebp + edx - 0x70]
mov ecx, edx
and ecx, edi
mov byte [ebp - 0xd], al
cmp ecx, edi
mov eax, 0xd2e67225
mov edx, 0xdc11f89e
cmovae ecx, edi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x34]
and al, 0xf
lea ecx, [edx + 0x25]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0x70], al
inc edx
mov dword [ebp - 0x34], edx
cmp edx, 8
jb 0x44a030
lea eax, [ebp - 0x70]
mov ecx, esi
push eax
call fcn.0048f530
mov edi, eax
mov byte [ebp - 4], 4
mov dl, byte [edi]
mov cl, byte [ebp - 0x1b8]
mov byte [edi], cl
mov eax, dword [ebp - 0x1b0]
mov ecx, dword [ebp - 0x1ac]
mov byte [ebp - 0x1b8], dl
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0x1b0], edx
mov dword [ebp - 0x1ac], esi
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x1b0]
push dword [ebp - 0x1b8]
call fcn.0048c330
push 0x104
lea eax, [ebp - 0x840]
push 0
push eax
call fcn.004fec40
add esp, 0xc
lea eax, [ebp - 0x840]
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 - 0x840]
lea ecx, [ebp - 0x390]
call fcn.0048f290
add esp, 4
mov byte [ebp - 4], 5
xor edx, edx
mov byte [ebp - 0x9d], 0xac
mov esi, 0xf
mov byte [ebp - 0x9c], 0x81
mov byte [ebp - 0x9b], 0x8b
mov byte [ebp - 0x9a], 0x69
mov byte [ebp - 0x99], 0x6b
mov byte [ebp - 0x98], 0x6f
mov byte [ebp - 0x97], 0x6e
mov byte [ebp - 0x96], 0x69
mov byte [ebp - 0x95], 0x73
mov byte [ebp - 0x94], 0x2e
mov byte [ebp - 0x93], 0x63
mov byte [ebp - 0x92], 0x60
mov byte [ebp - 0x91], 0x6c
mov byte [ebp - 0x90], 5
mov al, byte [ebp - 0x9d]
mov dword [ebp - 0x34], edx
nop
mov al, byte [ebp + edx - 0x9d]
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 - 0x34]
and al, 0xf
lea ecx, [edx - 3]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0x9d], al
inc edx
mov dword [ebp - 0x34], edx
cmp edx, 0xe
jb 0x44a180
lea eax, [ebp - 0x9d]
push eax
lea edx, [ebp - 0x390]
lea ecx, [ebp - 0x378]
call fcn.0048f160
add esp, 4
mov byte [ebp - 4], 6
lea eax, [ebp - 0x378]
cmp dword [ebp - 0x364], 0x10
cmovae eax, dword [ebp - 0x378]
push eax
push 0x1000
lea eax, [ebp - 0x1840]
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileSectionNamesA]
lea edi, [ebp - 0x1840]
mov dword [ebp - 0x34], edi
mov byte [ebp - 0x78], 0x70
xor edx, edx
mov byte [ebp - 0x77], 0x56
mov byte [ebp - 0x76], 0x4a
mov byte [ebp - 0x75], 0x49
mov byte [ebp - 0x74], 0x46
mov byte [ebp - 0x73], 0x48
mov byte [ebp - 0x72], 0x4c
mov byte [ebp - 0x71], 0x21
mov al, byte [ebp - 0x78]
mov dword [ebp - 0x14], edx
nop dword [eax]
mov al, byte [ebp + edx - 0x78]
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 - 0x78], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 8
jb 0x44a240
push 7
lea eax, [ebp - 0x78]
push eax
push edi
call fcn.0050a23f
add esp, 0xc
test eax, eax
jne 0x44bf08
push 0x104
push eax
lea eax, [ebp - 0x73c]
push eax
call fcn.004fec40
add esp, 0xc
lea esi, [ebp - 0x378]
cmp dword [ebp - 0x364], 0x10
mov edi, 0xf
cmovae esi, dword [ebp - 0x378]
xor edx, edx
mov byte [ebp - 0x51], 0x60
mov byte [ebp - 0x50], 0x50
mov byte [ebp - 0x4f], 0x4a
mov byte [ebp - 0x4e], 0x59
mov byte [ebp - 0x4d], 0x39
mov al, byte [ebp - 0x51]
mov dword [ebp - 0x14], edx
nop
mov al, byte [ebp + edx - 0x51]
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 - 0x51], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 5
jb 0x44a2e0
mov edi, dword [ebp - 0x34]
lea eax, [ebp - 0x73c]
push esi
push 0x104
push eax
push 0
lea eax, [ebp - 0x51]
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 0x44a350
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 0x44a3a0
sub ecx, edx
mov eax, closesocket
mov edx, dword [ebp - 0x380]
sub eax, edx
cmp eax, ecx
jb 0x44bf5e
cmp dword [ebp - 0x37c], 0x10
lea eax, [ebp - 0x390]
push ecx
cmovae eax, dword [ebp - 0x390]
lea ecx, [ebp - 0x16]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x120]
lea ecx, [ebp - 0x3c0]
call fcn.00493330
mov esi, dword [ebp - 0xa4]
lea eax, [ebp - 0x73c]
or esi, 4
lea edx, [ebp - 0x3c0]
push eax
lea ecx, [ebp - 0x3d8]
mov dword [ebp - 0xa4], esi
call fcn.0048f1f0
add esp, 4
mov byte [ebp - 4], 8
and esi, 0xfffffffb
mov dword [ebp - 0xa4], esi
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x3c0]
call fcn.0040b870
xorps xmm0, xmm0
mov dword [ebp - 0x10c], 0
lea ecx, [ebp - 0x73c]
mov dword [ebp - 0x108], 0
movups xmmword [ebp - 0x11c], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x44a458
sub ecx, edx
lea eax, [ebp - 0x73c]
push ecx
push eax
lea ecx, [ebp - 0x11c]
call fcn.0040bb00
mov byte [ebp - 4], 0xa
lea edi, [ebp - 0x11c]
cmp dword [ebp - 0x108], 0x10
mov esi, dword [ebp - 0x10c]
cmovae edi, dword [ebp - 0x11c]
test esi, esi
je 0x44a5e1
push esi
push 0x2f
push edi
call fcn.00500430
add esp, 0xc
test eax, eax
je 0x44a5e1
sub eax, edi
cmp eax, 0xffffffff
je 0x44a5e1
mov byte [ebp - 0x18], 0xdf
xor edx, edx
mov byte [ebp - 0x17], 0xf1
mov al, byte [ebp - 0x18]
mov dword [ebp - 0x14], edx
nop dword [eax]
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 0x44a4d0
sub esp, 0x18
lea ecx, [ebp - 0x18]
mov edx, esp
mov dword [ebp - 0x3a8], esp
xorps xmm0, xmm0
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 0x44a538
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 - 0x11c]
mov dword [ebp - 0x3a4], esp
mov ecx, esp
push eax
call fcn.0048ac50
mov byte [ebp - 4], 0xc
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x33c]
call fcn.00415760
add esp, 0x30
mov byte [ebp - 4], 0xd
mov eax, 0x2aaaaaab
mov ecx, dword [ebp - 0x338]
mov esi, dword [ebp - 0x33c]
sub ecx, esi
imul ecx
lea ecx, [ebp - 0x11c]
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 0x44a5cc
cmp dword [eax + 0x14], 0x10
mov ecx, dword [eax + 0x10]
jb 0x44a5bf
mov eax, dword [eax]
push ecx
push eax
lea ecx, [ebp - 0x11c]
call fcn.0048a9b0
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x33c]
call fcn.0048ccb0
mov esi, dword [ebp - 0x10c]
cmp dword [ebp - 0x108], 0x10
lea edi, [ebp - 0x11c]
cmovae edi, dword [ebp - 0x11c]
test esi, esi
je 0x44a73b
push esi
push 0x5c
push edi
call fcn.00500430
add esp, 0xc
test eax, eax
je 0x44a73b
sub eax, edi
cmp eax, 0xffffffff
je 0x44a73b
mov byte [ebp - 0x1a], 0xac
xor edx, edx
mov byte [ebp - 0x19], 0xf1
mov al, byte [ebp - 0x1a]
mov dword [ebp - 0x14], edx
nop dword [eax]
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 0x44a630
sub esp, 0x18
lea ecx, [ebp - 0x1a]
mov edx, esp
mov dword [ebp - 0x3a0], esp
xorps xmm0, xmm0
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 0x44a698
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 - 0x11c]
mov dword [ebp - 0x39c], esp
mov ecx, esp
push eax
call fcn.0048ac50
mov byte [ebp - 4], 0xf
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x348]
call fcn.00415760
add esp, 0x30
mov byte [ebp - 4], 0x10
mov eax, 0x2aaaaaab
mov ecx, dword [ebp - 0x344]
mov esi, dword [ebp - 0x348]
sub ecx, esi
imul ecx
lea ecx, [ebp - 0x11c]
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 0x44a72c
cmp dword [eax + 0x14], 0x10
mov ecx, dword [eax + 0x10]
jb 0x44a71f
mov eax, dword [eax]
push ecx
push eax
lea ecx, [ebp - 0x11c]
call fcn.0048a9b0
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x348]
call fcn.0048ccb0
mov byte [ebp - 0xb4], 0x5c
xor edx, edx
mov byte [ebp - 0xb3], 0x65
mov esi, 0xf
mov byte [ebp - 0xb2], 0x64
mov byte [ebp - 0xb1], 0x60
mov byte [ebp - 0xb0], 0x6a
mov byte [ebp - 0xaf], 0x6d
mov byte [ebp - 0xae], 0x61
mov byte [ebp - 0xad], 0x76
mov byte [ebp - 0xac], 0x2f
mov byte [ebp - 0xab], 0x7e
mov byte [ebp - 0xaa], 0x70
mov byte [ebp - 0xa9], 0x73
mov byte [ebp - 0xa8], 0x7a
mov byte [ebp - 0xa7], 0x65
mov byte [ebp - 0xa6], 0x78
mov byte [ebp - 0xa5], 0x15
mov al, byte [ebp - 0xb4]
mov dword [ebp - 0x14], edx
nop dword [eax + eax]
mov al, byte [ebp + edx - 0xb4]
mov ecx, edx
and ecx, esi
mov byte [ebp - 0xd], al
cmp ecx, esi
mov eax, 0x9fe87c05
mov edx, 0x1e32fe3c
cmovae ecx, esi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx + 5]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0xb4], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 0x10
jb 0x44a7c0
lea eax, [ebp - 0xb4]
push eax
lea edx, [ebp - 0x3d8]
lea ecx, [ebp - 0x360]
call fcn.0048f160
add esp, 4
mov byte [ebp - 4], 0x11
xor edx, edx
mov byte [ebp - 0x37], 0xc2
mov byte [ebp - 0x36], 0xd3
mov byte [ebp - 0x35], 0xbb
mov al, byte [ebp - 0x37]
mov dword [ebp - 0x14], edx
mov al, byte [ebp + edx - 0x37]
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 - 0x37], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 3
jb 0x44a835
cmp dword [ebp - 0x34c], 0x10
lea ecx, [ebp - 0x37]
lea eax, [ebp - 0x360]
cmovae eax, dword [ebp - 0x360]
push ecx
push eax
call fcn.00502ab0
add esp, 8
test eax, eax
je 0x44be8e
push eax
call fcn.0050633e
add esp, 4
mov byte [ebp - 0x138], 0
lea ecx, [ebp - 0x130]
push 0
call fcn.0048c650
mov byte [ebp - 4], 0x13
sub esp, 8
mov eax, esp
lea ecx, [ebp - 0x1c8]
mov dword [eax], 0
mov dword [eax + 4], 0
call fcn.00488c00
add esp, 8
mov byte [ebp - 4], 0x14
mov al, byte [ebp - 0x138]
test al, al
jne 0x44a907
mov byte [ebp - 0x138], 1
call fcn.004903b0
mov ecx, eax
mov dword [ebp - 0x130], ecx
mov al, byte [ebp - 0x138]
jmp 0x44a90d
mov ecx, dword [ebp - 0x130]
cmp al, 1
jne 0x44c1a6
lea eax, [ebp - 0x11c]
push eax
call fcn.0048c830
mov edi, eax
mov byte [ebp - 4], 0x17
mov dl, byte [edi]
mov cl, byte [ebp - 0x1c8]
mov byte [edi], cl
mov eax, dword [ebp - 0x1c0]
mov ecx, dword [ebp - 0x1bc]
mov byte [ebp - 0x1c8], dl
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0x1c0], edx
mov dword [ebp - 0x1bc], esi
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x1c0]
push dword [ebp - 0x1c8]
call fcn.0048c330
cmp dword [ebp - 0x34c], 0x10
lea ecx, [ebp - 0x360]
lea edx, [ebp - 0x124]
cmovae ecx, dword [ebp - 0x360]
call fcn.00422a10
test eax, eax
jne 0x44bded
mov byte [ebp - 0x102], 0x23
xor edx, edx
mov byte [ebp - 0x101], 0x3c
mov byte [ebp - 0x100], 0x36
mov byte [ebp - 0xff], 0xc9
mov byte [ebp - 0xfe], 0xca
mov byte [ebp - 0xfd], 0xd6
mov byte [ebp - 0xfc], 0xaf
mov byte [ebp - 0xfb], 0xea
mov byte [ebp - 0xfa], 0xe8
mov byte [ebp - 0xf9], 0xf3
mov byte [ebp - 0xf8], 0xf5
mov byte [ebp - 0xf7], 0xa8
mov byte [ebp - 0xf6], 0xa0
mov byte [ebp - 0xf5], 0xe1
mov byte [ebp - 0xf4], 0xf9
mov byte [ebp - 0xf3], 0xc7
mov byte [ebp - 0xf2], 0xf4
mov byte [ebp - 0xf1], 0xfd
mov byte [ebp - 0xf0], 0xfa
mov byte [ebp - 0xef], 0xd3
mov byte [ebp - 0xee], 0xf7
mov byte [ebp - 0xed], 0xfe
mov byte [ebp - 0xec], 0xe6
mov byte [ebp - 0xeb], 0xbe
mov byte [ebp - 0xea], 0xb7
mov byte [ebp - 0xe9], 0xe0
mov byte [ebp - 0xe8], 0xf0
mov byte [ebp - 0xe7], 0xe0
mov byte [ebp - 0xe6], 0xf8
mov byte [ebp - 0xe5], 0xb4
mov byte [ebp - 0xe4], 0xba
mov byte [ebp - 0xe3], 0xf6
mov byte [ebp - 0xe2], 0xe3
mov byte [ebp - 0xe1], 0xca
mov byte [ebp - 0xe0], 0xff
mov byte [ebp - 0xdf], 0xcf
mov byte [ebp - 0xde], 0xdc
mov byte [ebp - 0xdd], 0xd0
mov byte [ebp - 0xdc], 0xca
mov byte [ebp - 0xdb], 0x8e
mov byte [ebp - 0xda], 0x87
mov byte [ebp - 0xd9], 0xc5
mov byte [ebp - 0xd8], 0xd9
mov byte [ebp - 0xd7], 0xd4
mov byte [ebp - 0xd6], 0xc9
mov byte [ebp - 0xd5], 0xda
mov byte [ebp - 0xd4], 0xd3
mov byte [ebp - 0xd3], 0x83
mov byte [ebp - 0xd2], 0x80
mov byte [ebp - 0xd1], 0xc7
mov byte [ebp - 0xd0], 0xcb
mov byte [ebp - 0xcf], 0xd1
mov byte [ebp - 0xce], 0xdc
mov byte [ebp - 0xcd], 0x9e
mov byte [ebp - 0xcc], 0x9f
mov byte [ebp - 0xcb], 0xc4
mov byte [ebp - 0xca], 0xd6
mov byte [ebp - 0xc9], 0xdc
mov byte [ebp - 0xc8], 0xc4
mov byte [ebp - 0xc7], 0xd1
mov byte [ebp - 0xc6], 0x90
mov byte [ebp - 0xc5], 0xfe
mov byte [ebp - 0xc4], 0xe8
mov byte [ebp - 0xc3], 0xf0
mov byte [ebp - 0xc2], 0xfd
mov byte [ebp - 0xc1], 0x99
mov byte [ebp - 0xc0], 0xd7
mov byte [ebp - 0xbf], 0xa3
mov byte [ebp - 0xbe], 0xb3
mov byte [ebp - 0xbd], 0x9d
mov byte [ebp - 0xbc], 0xac
mov byte [ebp - 0xbb], 0xad
mov byte [ebp - 0xba], 0xa8
mov byte [ebp - 0xb9], 0xab
mov byte [ebp - 0xb8], 0xa8
mov byte [ebp - 0xb7], 0xa1
mov byte [ebp - 0xb6], 0xb3
mov byte [ebp - 0xb5], 0xc8
mov al, byte [ebp - 0x102]
mov dword [ebp - 0x14], edx
mov al, byte [ebp + edx - 0x102]
mov ecx, edx
and ecx, 0xf
mov byte [ebp - 0xd], al
cmp ecx, 0xf
mov eax, 0xf
mov edx, 0x3129c662
cmovae ecx, eax
mov eax, 0x6c08c57d
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx + 0x7d]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0x102], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 0x4e
jb 0x44abc4
mov edi, dword [ebp - 0x124]
lea eax, [ebp - 0x3c]
push ecx
push eax
push ecx
lea edx, [ebp - 0x102]
mov ecx, edi
call fcn.004d7710
add esp, 0xc
test eax, eax
jne 0x44bde6
mov esi, dword [ebp - 0x3c]
mov ecx, esi
call fcn.004c2fb0
cmp eax, 0x64
jne 0x44bddf
push 0
lea ecx, [ebp - 0x28]
mov byte [ebp - 0x30], 0
call fcn.0048c650
mov byte [ebp - 4], 0x19
xor edx, edx
mov ecx, esi
call fcn.004c32a0
xorps xmm0, xmm0
mov dword [ebp - 0x250], eax
lea edx, [ebp - 0x250]
mov byte [ebp - 0x188], 0
lea ecx, [ebp - 0x188]
movq qword [ebp - 0x180], xmm0
call fcn.004a1050
mov byte [ebp - 4], 0x1a
xor edx, edx
mov byte [ebp - 0x58], 0x34
mov byte [ebp - 0x57], 0x38
mov byte [ebp - 0x56], 0x38
mov byte [ebp - 0x55], 0x3f
mov byte [ebp - 0x54], 0x3f
mov byte [ebp - 0x53], 0x3c
mov byte [ebp - 0x52], 0x5a
mov al, byte [ebp - 0x58]
mov dword [ebp - 0x14], edx
mov al, byte [ebp + edx - 0x58]
mov ecx, edx
and ecx, 0xf
mov byte [ebp - 0xd], al
cmp ecx, 0xf
mov eax, 0xf
mov edx, 0xf26376ea
cmovae ecx, eax
mov eax, 0xfd43a651
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx + 0x51]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0x58], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 7
jb 0x44acb0
mov al, byte [ebp - 0x30]
test al, al
jne 0x44ad22
push 1
lea ecx, [ebp - 0x300]
mov byte [ebp - 0x30], 1
call fcn.0048c650
mov eax, dword [ebp - 0x2fc]
mov esi, dword [ebp - 0x300]
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x24], eax
mov al, byte [ebp - 0x30]
jmp 0x44ad25
mov esi, dword [ebp - 0x28]
cmp al, 1
jne 0x44c154
xorps xmm0, xmm0
mov dword [ebp - 0x270], 0
lea edx, [ebp - 0x58]
mov dword [ebp - 0x26c], 0
movups xmmword [ebp - 0x280], xmm0
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x44ad51
sub edx, ecx
lea eax, [ebp - 0x58]
push edx
push eax
lea ecx, [ebp - 0x280]
call fcn.0040bb00
mov byte [ebp - 4], 0x1b
lea eax, [ebp - 0x280]
push eax
mov ecx, esi
call fcn.00492d40
mov edi, eax
mov byte [ebp - 4], 0x1a
mov ecx, dword [ebp - 0x26c]
cmp ecx, 0x10
jb 0x44adbc
mov edx, dword [ebp - 0x280]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x44adb2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44bf63
push ecx
push edx
call fcn.004e6a11
add esp, 8
mov dword [ebp - 0x270], 0
mov dword [ebp - 0x26c], 0xf
mov byte [ebp - 0x280], 0
mov byte [ebp - 4], 0x1e
mov cl, byte [edi]
movzx eax, byte [ebp - 0x188]
mov byte [edi], al
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov eax, dword [ebp - 0x180]
mov byte [ebp - 0x188], cl
mov byte [ebp - 0x22c], cl
mov ecx, dword [ebp - 0x17c]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0x180], edx
mov dword [ebp - 0x17c], esi
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x180]
push dword [ebp - 0x22c]
call fcn.0048c330
mov byte [ebp - 0x1c], 0xc1
xor edx, edx
mov byte [ebp - 0x1b], 0xf1
mov edi, 0xf
mov al, byte [ebp - 0x1c]
mov dword [ebp - 0x14], edx
mov al, byte [ebp + edx - 0x1c]
mov ecx, edx
and ecx, edi
mov byte [ebp - 0xd], al
cmp ecx, edi
mov eax, 0xd9b2ebfd
mov edx, 0x89aed71c
cmovae ecx, edi
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 - 0x1c], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 2
jb 0x44ae40
xorps xmm0, xmm0
mov dword [ebp - 0x1d0], 0
lea ecx, [ebp - 0x1c]
mov dword [ebp - 0x1cc], 0
movups xmmword [ebp - 0x1e0], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x44aea0
sub ecx, edx
lea eax, [ebp - 0x1c]
push ecx
push eax
lea ecx, [ebp - 0x1e0]
call fcn.0040bb00
mov byte [ebp - 4], 0x1f
mov edx, 1
mov ecx, dword [ebp - 0x3c]
call fcn.004c32a0
mov edx, eax
mov dword [ebp - 0x1e8], 0
mov ecx, edx
mov dword [ebp - 0x1e4], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x1f8], xmm0
lea esi, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x44aef0
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x1f8]
call fcn.0040bb00
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0x1e0]
cmp dword [ebp - 0x1cc], 0x10
lea edx, [ebp - 0x1f8]
mov esi, dword [ebp - 0x1e8]
cmovae ecx, dword [ebp - 0x1e0]
cmp dword [ebp - 0x1e4], 0x10
cmovae edx, dword [ebp - 0x1f8]
cmp esi, dword [ebp - 0x1d0]
jne 0x44af8c
sub esi, 4
jb 0x44af56
mov eax, dword [edx]
cmp eax, dword [ecx]
jne 0x44af5b
add edx, 4
add ecx, 4
sub esi, 4
jae 0x44af45
cmp esi, 0xfffffffc
je 0x44af88
mov al, byte [edx]
cmp al, byte [ecx]
jne 0x44af8c
cmp esi, 0xfffffffd
je 0x44af88
mov al, byte [edx + 1]
cmp al, byte [ecx + 1]
jne 0x44af8c
cmp esi, 0xfffffffe
je 0x44af88
mov al, byte [edx + 2]
cmp al, byte [ecx + 2]
jne 0x44af8c
cmp esi, 0xffffffff
je 0x44af88
mov al, byte [edx + 3]
cmp al, byte [ecx + 3]
jne 0x44af8c
mov dl, 1
jmp 0x44af8e
xor dl, dl
xorps xmm0, xmm0
mov byte [ebp - 0x148], 0
lea ecx, [ebp - 0x148]
movq qword [ebp - 0x140], xmm0
call fcn.004a10f0
mov byte [ebp - 4], 0x21
xor edx, edx
mov byte [ebp - 0x68], 8
mov byte [ebp - 0x67], 0x18
mov byte [ebp - 0x66], 0x18
mov byte [ebp - 0x65], 0x1c
mov byte [ebp - 0x64], 0x24
mov byte [ebp - 0x63], 1
mov byte [ebp - 0x62], 0xd
mov byte [ebp - 0x61], 2
mov byte [ebp - 0x60], 0x70
mov al, byte [ebp - 0x68]
mov dword [ebp - 0x14], edx
nop dword [eax + eax]
mov al, byte [ebp + edx - 0x68]
mov ecx, edx
and ecx, 0xf
mov byte [ebp - 0xd], al
cmp ecx, 0xf
mov eax, 0xbe160769
mov edx, 0x2e603141
cmovae ecx, edi
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 - 0x68], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 9
jb 0x44afe0
mov al, byte [ebp - 0x30]
test al, al
jne 0x44b04d
push 1
lea ecx, [ebp - 0x330]
mov byte [ebp - 0x30], 1
call fcn.0048c650
mov eax, dword [ebp - 0x32c]
mov esi, dword [ebp - 0x330]
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x24], eax
mov al, byte [ebp - 0x30]
jmp 0x44b050
mov esi, dword [ebp - 0x28]
cmp al, 1
jne 0x44c102
xorps xmm0, xmm0
mov dword [ebp - 0x288], 0
lea edx, [ebp - 0x68]
mov dword [ebp - 0x284], 0
movups xmmword [ebp - 0x298], xmm0
lea ecx, [edx + 1]
nop dword [eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x44b080
sub edx, ecx
lea eax, [ebp - 0x68]
push edx
push eax
lea ecx, [ebp - 0x298]
call fcn.0040bb00
mov byte [ebp - 4], 0x22
lea eax, [ebp - 0x298]
push eax
mov ecx, esi
call fcn.00492d40
mov edi, eax
mov byte [ebp - 4], 0x21
mov ecx, dword [ebp - 0x284]
cmp ecx, 0x10
jb 0x44b0eb
mov edx, dword [ebp - 0x298]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x44b0e1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44bf63
push ecx
push edx
call fcn.004e6a11
add esp, 8
mov dword [ebp - 0x288], 0
mov dword [ebp - 0x284], 0xf
mov byte [ebp - 0x298], 0
mov byte [ebp - 4], 0x25
mov cl, byte [edi]
mov al, byte [ebp - 0x148]
mov byte [edi], al
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov eax, dword [ebp - 0x140]
mov byte [ebp - 0x148], cl
mov byte [ebp - 0x230], cl
mov ecx, dword [ebp - 0x13c]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0x140], edx
mov dword [ebp - 0x13c], esi
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0x140]
push dword [ebp - 0x230]
call fcn.0048c330
mov byte [ebp - 4], 0x1f
mov ecx, dword [ebp - 0x1e4]
cmp ecx, 0x10
jb 0x44b197
mov edx, dword [ebp - 0x1f8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x44b18d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44bf63
push ecx
push edx
call fcn.004e6a11
add esp, 8
mov dword [ebp - 0x1e8], 0
mov dword [ebp - 0x1e4], 0xf
mov byte [ebp - 0x1f8], 0
mov byte [ebp - 4], 0x19
mov ecx, dword [ebp - 0x1cc]
cmp ecx, 0x10
jb 0x44b1f0
mov edx, dword [ebp - 0x1e0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x44b1e6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44bf63
push ecx
push edx
call fcn.004e6a11
add esp, 8
mov ecx, dword [ebp - 0x3c]
mov edx, 2
mov dword [ebp - 0x1d0], 0
mov dword [ebp - 0x1cc], 0xf
mov byte [ebp - 0x1e0], 0
call fcn.004c32a0
xorps xmm0, xmm0
mov dword [ebp - 0x234], eax
lea edx, [ebp - 0x234]
mov byte [ebp - 0x168], 0
lea ecx, [ebp - 0x168]
movq qword [ebp - 0x160], xmm0
call fcn.004a1050
mov byte [ebp - 4], 0x26
xor edx, edx
mov byte [ebp - 0x41], 0x40
mov byte [ebp - 0x40], 0x50
mov byte [ebp - 0x3f], 0x4a
mov byte [ebp - 0x3e], 0x59
mov byte [ebp - 0x3d], 0x39
mov al, byte [ebp - 0x41]
mov dword [ebp - 0x14], edx
mov al, byte [ebp + edx - 0x41]
mov ecx, edx
and ecx, 0xf
mov byte [ebp - 0xd], al
cmp ecx, 0xf
mov eax, 0xf
mov edx, 0xc3367ac1
cmovae ecx, eax
mov eax, 0x565c5d31
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 - 0x41], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 5
jb 0x44b261
mov al, byte [ebp - 0x30]
test al, al
jne 0x44b2d3
push 1
lea ecx, [ebp - 0x308]
mov byte [ebp - 0x30], 1
call fcn.0048c650
mov eax, dword [ebp - 0x304]
mov esi, dword [ebp - 0x308]
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x24], eax
mov al, byte [ebp - 0x30]
jmp 0x44b2d6
mov esi, dword [ebp - 0x28]
cmp al, 1
jne 0x44c0b0
xorps xmm0, xmm0
mov dword [ebp - 0x2a0], 0
lea edx, [ebp - 0x41]
mov dword [ebp - 0x29c], 0
movups xmmword [ebp - 0x2b0], xmm0
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x44b302
sub edx, ecx
lea eax, [ebp - 0x41]
push edx
push eax
lea ecx, [ebp - 0x2b0]
call fcn.0040bb00
mov byte [ebp - 4], 0x27
lea eax, [ebp - 0x2b0]
push eax
mov ecx, esi
call fcn.00492d40
mov edi, eax
mov byte [ebp - 4], 0x26
mov ecx, dword [ebp - 0x29c]
cmp ecx, 0x10
jb 0x44b36d
mov edx, dword [ebp - 0x2b0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x44b363
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44bf63
push ecx
push edx
call fcn.004e6a11
add esp, 8
mov dword [ebp - 0x2a0], 0
mov dword [ebp - 0x29c], 0xf
mov byte [ebp - 0x2b0], 0
mov byte [ebp - 4], 0x2a
mov cl, byte [edi]
movzx eax, byte [ebp - 0x168]
mov byte [edi], al
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov eax, dword [ebp - 0x160]
mov byte [ebp - 0x168], cl
mov byte [ebp - 0x238], cl
mov ecx, dword [ebp - 0x15c]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0x160], edx
mov dword [ebp - 0x15c], esi
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x160]
push dword [ebp - 0x238]
call fcn.0048c330
mov byte [ebp - 0x1e], 0xc1
xor edx, edx
mov byte [ebp - 0x1d], 0xf1
mov edi, 0xf
mov al, byte [ebp - 0x1e]
mov dword [ebp - 0x14], edx
mov al, byte [ebp + edx - 0x1e]
mov ecx, edx
and ecx, edi
mov byte [ebp - 0xd], al
cmp ecx, edi
mov eax, 0xd9b2ebfd
mov edx, 0x89aed71c
cmovae ecx, edi
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 - 0x1e], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 2
jb 0x44b3f1
xorps xmm0, xmm0
mov dword [ebp - 0x200], 0
lea ecx, [ebp - 0x1e]
mov dword [ebp - 0x1fc], 0
movups xmmword [ebp - 0x210], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x44b451
sub ecx, edx
lea eax, [ebp - 0x1e]
push ecx
push eax
lea ecx, [ebp - 0x210]
call fcn.0040bb00
mov byte [ebp - 4], 0x2b
mov edx, 3
mov ecx, dword [ebp - 0x3c]
call fcn.004c32a0
mov edx, eax
mov dword [ebp - 0x218], 0
mov ecx, edx
mov dword [ebp - 0x214], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x228], xmm0
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x44b4a0
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x228]
call fcn.0040bb00
mov byte [ebp - 4], 0x2c
lea ecx, [ebp - 0x210]
cmp dword [ebp - 0x1fc], 0x10
lea edx, [ebp - 0x228]
mov esi, dword [ebp - 0x218]
cmovae ecx, dword [ebp - 0x210]
cmp dword [ebp - 0x214], 0x10
cmovae edx, dword [ebp - 0x228]
cmp esi, dword [ebp - 0x200]
jne 0x44b53c
sub esi, 4
jb 0x44b506
mov eax, dword [edx]
cmp eax, dword [ecx]
jne 0x44b50b
add edx, 4
add ecx, 4
sub esi, 4
jae 0x44b4f5
cmp esi, 0xfffffffc
je 0x44b538
mov al, byte [edx]
cmp al, byte [ecx]
jne 0x44b53c
cmp esi, 0xfffffffd
je 0x44b538
mov al, byte [edx + 1]
cmp al, byte [ecx + 1]
jne 0x44b53c
cmp esi, 0xfffffffe
je 0x44b538
mov al, byte [edx + 2]
cmp al, byte [ecx + 2]
jne 0x44b53c
cmp esi, 0xffffffff
je 0x44b538
mov al, byte [edx + 3]
cmp al, byte [ecx + 3]
jne 0x44b53c
mov dl, 1
jmp 0x44b53e
xor dl, dl
xorps xmm0, xmm0
mov byte [ebp - 0x158], 0
lea ecx, [ebp - 0x158]
movq qword [ebp - 0x150], xmm0
call fcn.004a10f0
mov byte [ebp - 4], 0x2d
mov byte [ebp - 0x5f], 0x23
mov byte [ebp - 0x5e], 0x32
mov byte [ebp - 0x5d], 0x36
mov byte [ebp - 0x5c], 0x2b
mov byte [ebp - 0x5b], 0x24
mov byte [ebp - 0x5a], 0x37
mov byte [ebp - 0x59], 0x5a
mov al, byte [ebp - 0x5f]
xor eax, eax
mov dword [ebp - 0x14], eax
mov cl, byte [ebp + eax - 0x5f]
mov edx, 0xf26376ea
mov byte [ebp - 0xd], cl
mov ecx, eax
and ecx, 0xf
mov eax, 0xfd43a651
cmp ecx, 0xf
cmovae ecx, edi
shl ecx, 2
call fcn.00522040
mov dl, al
mov eax, dword [ebp - 0x14]
and dl, 0xf
lea ecx, [eax + 0x51]
xor dl, cl
xor dl, byte [ebp - 0xd]
mov byte [ebp + eax - 0x5f], dl
inc eax
mov dword [ebp - 0x14], eax
cmp eax, 7
jb 0x44b583
mov al, byte [ebp - 0x30]
test al, al
jne 0x44b5f3
push 1
lea ecx, [ebp - 0x328]
mov byte [ebp - 0x30], 1
call fcn.0048c650
mov eax, dword [ebp - 0x324]
mov esi, dword [ebp - 0x328]
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x24], eax
mov al, byte [ebp - 0x30]
jmp 0x44b5f6
mov esi, dword [ebp - 0x28]
cmp al, 1
jne 0x44c05e
xorps xmm0, xmm0
mov dword [ebp - 0x2b8], 0
lea edx, [ebp - 0x5f]
mov dword [ebp - 0x2b4], 0
movups xmmword [ebp - 0x2c8], xmm0
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x44b622
sub edx, ecx
lea eax, [ebp - 0x5f]
push edx
push eax
lea ecx, [ebp - 0x2c8]
call fcn.0040bb00
mov byte [ebp - 4], 0x2e
lea eax, [ebp - 0x2c8]
push eax
mov ecx, esi
call fcn.00492d40
mov edi, eax
mov byte [ebp - 4], 0x2d
mov ecx, dword [ebp - 0x2b4]
cmp ecx, 0x10
jb 0x44b68d
mov edx, dword [ebp - 0x2c8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x44b683
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44bf63
push ecx
push edx
call fcn.004e6a11
add esp, 8
mov dword [ebp - 0x2b8], 0
mov dword [ebp - 0x2b4], 0xf
mov byte [ebp - 0x2c8], 0
mov byte [ebp - 4], 0x31
mov cl, byte [edi]
mov al, byte [ebp - 0x158]
mov byte [edi], al
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov eax, dword [ebp - 0x150]
mov byte [ebp - 0x158], cl
mov byte [ebp - 0x23c], cl
mov ecx, dword [ebp - 0x14c]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0x150], edx
mov dword [ebp - 0x14c], esi
mov byte [ebp - 4], 0x2c
lea ecx, [ebp - 0x150]
push dword [ebp - 0x23c]
call fcn.0048c330
mov byte [ebp - 4], 0x2b
mov ecx, dword [ebp - 0x214]
cmp ecx, 0x10
jb 0x44b739
mov edx, dword [ebp - 0x228]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x44b72f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44bf63
push ecx
push edx
call fcn.004e6a11
add esp, 8
mov dword [ebp - 0x218], 0
mov dword [ebp - 0x214], 0xf
mov byte [ebp - 0x228], 0
mov byte [ebp - 4], 0x19
mov ecx, dword [ebp - 0x1fc]
cmp ecx, 0x10
jb 0x44b792
mov edx, dword [ebp - 0x210]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x44b788
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44bf63
push ecx
push edx
call fcn.004e6a11
add esp, 8
mov ecx, dword [ebp - 0x3c]
mov edx, 4
mov dword [ebp - 0x200], 0
mov dword [ebp - 0x1fc], 0xf
mov byte [ebp - 0x210], 0
call fcn.004c32a0
push eax
call fcn.0050a587
push edx
xorps xmm0, xmm0
mov byte [ebp - 0x178], 0
push eax
lea ecx, [ebp - 0x178]
movq qword [ebp - 0x170], xmm0
call fcn.004a1110
add esp, 0xc
mov byte [ebp - 4], 0x32
xor edx, edx
mov byte [ebp - 0x8f], 0xc5
mov byte [ebp - 0x8e], 0xd0
mov byte [ebp - 0x8d], 0xdc
mov byte [ebp - 0x8c], 0xc5
mov byte [ebp - 0x8b], 0xde
mov byte [ebp - 0x8a], 0xca
mov byte [ebp - 0x89], 0xd6
mov byte [ebp - 0x88], 0xcf
mov byte [ebp - 0x87], 0xc0
mov byte [ebp - 0x86], 0xc4
mov byte [ebp - 0x85], 0xe0
mov byte [ebp - 0x84], 0xc6
mov byte [ebp - 0x83], 0xdd
mov byte [ebp - 0x82], 0xcb
mov byte [ebp - 0x81], 0xa1
mov al, byte [ebp - 0x8f]
mov dword [ebp - 0x14], edx
nop word [eax + eax]
mov al, byte [ebp + edx - 0x8f]
mov ecx, edx
and ecx, 0xf
mov byte [ebp - 0xd], al
cmp ecx, 0xf
mov eax, 0xf
mov edx, 0x5e04bf06
cmovae ecx, eax
mov eax, 0xe5d98fa1
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx - 0x5f]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0x8f], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 0xf
jb 0x44b860
mov al, byte [ebp - 0x30]
test al, al
jne 0x44b8d8
push 1
lea ecx, [ebp - 0x320]
mov byte [ebp - 0x30], 1
call fcn.0048c650
mov eax, dword [ebp - 0x31c]
mov esi, dword [ebp - 0x320]
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x24], eax
mov al, byte [ebp - 0x30]
jmp 0x44b8db
mov esi, dword [ebp - 0x28]
cmp al, 1
jne 0x44c00c
xorps xmm0, xmm0
mov dword [ebp - 0x258], 0
lea edx, [ebp - 0x8f]
mov dword [ebp - 0x254], 0
movups xmmword [ebp - 0x268], xmm0
lea ecx, [edx + 1]
nop word [eax + eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x44b910
sub edx, ecx
lea eax, [ebp - 0x8f]
push edx
push eax
lea ecx, [ebp - 0x268]
call fcn.0040bb00
mov byte [ebp - 4], 0x33
lea eax, [ebp - 0x268]
push eax
mov ecx, esi
call fcn.00492d40
mov edi, eax
mov byte [ebp - 4], 0x32
mov ecx, dword [ebp - 0x254]
cmp ecx, 0x10
jb 0x44b97e
mov edx, dword [ebp - 0x268]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x44b974
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44bf63
push ecx
push edx
call fcn.004e6a11
add esp, 8
mov dword [ebp - 0x258], 0
mov dword [ebp - 0x254], 0xf
mov byte [ebp - 0x268], 0
mov byte [ebp - 4], 0x36
mov cl, byte [edi]
movzx eax, byte [ebp - 0x178]
mov byte [edi], al
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov eax, dword [ebp - 0x170]
mov byte [ebp - 0x178], cl
mov byte [ebp - 0x240], cl
mov ecx, dword [ebp - 0x16c]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0x170], edx
mov dword [ebp - 0x16c], esi
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x170]
push dword [ebp - 0x240]
call fcn.0048c330
mov ecx, dword [ebp - 0x3c]
mov edx, 5
call fcn.004c32a0
xorps xmm0, xmm0
mov dword [ebp - 0x244], eax
lea edx, [ebp - 0x244]
mov byte [ebp - 0x1a8], 0
lea ecx, [ebp - 0x1a8]
movq qword [ebp - 0x1a0], xmm0
call fcn.004a1050
mov byte [ebp - 4], 0x37
xor edx, edx
mov byte [ebp - 0x46], 0x5e
mov byte [ebp - 0x45], 0x50
mov byte [ebp - 0x44], 0x53
mov byte [ebp - 0x43], 0x54
mov byte [ebp - 0x42], 0x39
mov al, byte [ebp - 0x46]
mov dword [ebp - 0x14], edx
mov al, byte [ebp + edx - 0x46]
mov ecx, edx
and ecx, 0xf
mov byte [ebp - 0xd], al
cmp ecx, 0xf
mov eax, 0xf
mov edx, 0xc3367ac1
cmovae ecx, eax
mov eax, 0x565c5d31
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 - 0x46], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 5
jb 0x44ba43
mov al, byte [ebp - 0x30]
test al, al
jne 0x44bab5
push 1
lea ecx, [ebp - 0x318]
mov byte [ebp - 0x30], 1
call fcn.0048c650
mov eax, dword [ebp - 0x314]
mov esi, dword [ebp - 0x318]
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x24], eax
mov al, byte [ebp - 0x30]
jmp 0x44bab8
mov esi, dword [ebp - 0x28]
cmp al, 1
jne 0x44bfba
xorps xmm0, xmm0
mov dword [ebp - 0x2e8], 0
lea edx, [ebp - 0x46]
mov dword [ebp - 0x2e4], 0
movups xmmword [ebp - 0x2f8], xmm0
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x44bae4
sub edx, ecx
lea eax, [ebp - 0x46]
push edx
push eax
lea ecx, [ebp - 0x2f8]
call fcn.0040bb00
mov byte [ebp - 4], 0x38
lea eax, [ebp - 0x2f8]
push eax
mov ecx, esi
call fcn.00492d40
mov edi, eax
mov byte [ebp - 4], 0x37
mov ecx, dword [ebp - 0x2e4]
cmp ecx, 0x10
jb 0x44bb4f
mov edx, dword [ebp - 0x2f8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x44bb45
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44bf63
push ecx
push edx
call fcn.004e6a11
add esp, 8
mov dword [ebp - 0x2e8], 0
mov dword [ebp - 0x2e4], 0xf
mov byte [ebp - 0x2f8], 0
mov byte [ebp - 4], 0x3b
mov cl, byte [edi]
movzx eax, byte [ebp - 0x1a8]
mov byte [edi], al
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov eax, dword [ebp - 0x1a0]
mov byte [ebp - 0x1a8], cl
mov byte [ebp - 0x248], cl
mov ecx, dword [ebp - 0x19c]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0x1a0], edx
mov dword [ebp - 0x19c], esi
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x1a0]
push dword [ebp - 0x248]
call fcn.0048c330
mov ecx, dword [ebp - 0x3c]
mov edx, 6
call fcn.004c32a0
xorps xmm0, xmm0
mov dword [ebp - 0x24c], eax
lea edx, [ebp - 0x24c]
mov byte [ebp - 0x198], 0
lea ecx, [ebp - 0x198]
movq qword [ebp - 0x190], xmm0
call fcn.004a1050
mov byte [ebp - 4], 0x3c
xor edx, edx
mov byte [ebp - 0x4c], 0x86
mov byte [ebp - 0x4b], 0x90
mov byte [ebp - 0x4a], 0x9d
mov byte [ebp - 0x49], 0x73
mov byte [ebp - 0x48], 0x6d
mov byte [ebp - 0x47], 0xe
mov al, byte [ebp - 0x4c]
mov dword [ebp - 0x14], edx
nop dword [eax + eax]
mov al, byte [ebp + edx - 0x4c]
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 - 0x4c], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 6
jb 0x44bc20
mov al, byte [ebp - 0x30]
test al, al
jne 0x44bc92
push 1
lea ecx, [ebp - 0x310]
mov byte [ebp - 0x30], 1
call fcn.0048c650
mov eax, dword [ebp - 0x30c]
mov esi, dword [ebp - 0x310]
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x24], eax
mov al, byte [ebp - 0x30]
jmp 0x44bc95
mov esi, dword [ebp - 0x28]
cmp al, 1
jne 0x44bf68
xorps xmm0, xmm0
mov dword [ebp - 0x2d0], 0
lea edx, [ebp - 0x4c]
mov dword [ebp - 0x2cc], 0
movups xmmword [ebp - 0x2e0], xmm0
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x44bcc1
sub edx, ecx
lea eax, [ebp - 0x4c]
push edx
push eax
lea ecx, [ebp - 0x2e0]
call fcn.0040bb00
mov byte [ebp - 4], 0x3d
lea eax, [ebp - 0x2e0]
push eax
mov ecx, esi
call fcn.00492d40
mov edi, eax
mov byte [ebp - 4], 0x3c
mov ecx, dword [ebp - 0x2cc]
cmp ecx, 0x10
jb 0x44bd2c
mov edx, dword [ebp - 0x2e0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x44bd22
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44bf63
push ecx
push edx
call fcn.004e6a11
add esp, 8
mov dword [ebp - 0x2d0], 0
mov dword [ebp - 0x2cc], 0xf
mov byte [ebp - 0x2e0], 0
mov byte [ebp - 4], 0x40
mov cl, byte [edi]
mov al, byte [ebp - 0x198]
mov byte [edi], al
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov eax, dword [ebp - 0x190]
mov byte [ebp - 0x198], cl
mov byte [ebp - 0x120], cl
mov ecx, dword [ebp - 0x18c]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0x190], edx
mov dword [ebp - 0x18c], esi
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x190]
push dword [ebp - 0x120]
call fcn.0048c330
lea eax, [ebp - 0x11c]
push eax
lea ecx, [ebp - 0x138]
call fcn.004884a0
lea ecx, [ebp - 0x30]
push ecx
mov ecx, eax
call fcn.00488230
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x28]
push dword [ebp - 0x30]
call fcn.0048c330
mov esi, dword [ebp - 0x3c]
mov ecx, esi
call fcn.004c2fb0
cmp eax, 0x64
je 0x44ac44
mov edi, dword [ebp - 0x124]
mov ecx, esi
call fcn.004c2c20
mov ecx, edi
call fcn.00422df0
mov byte [ebp - 0x80], 0x43
xor edx, edx
mov byte [ebp - 0x7f], 0x4b
mov esi, 0xf
mov byte [ebp - 0x7e], 0x4a
mov byte [ebp - 0x7d], 0x44
mov byte [ebp - 0x7c], 0x46
mov byte [ebp - 0x7b], 0x41
mov byte [ebp - 0x7a], 0x5a
mov byte [ebp - 0x79], 0x21
mov al, byte [ebp - 0x80]
mov dword [ebp - 0x14], edx
nop word [eax + eax]
mov al, byte [ebp + edx - 0x80]
mov ecx, edx
and ecx, esi
mov byte [ebp - 0xd], al
cmp ecx, esi
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 - 0x80], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 8
jb 0x44be20
mov ecx, dword [ebp - 0x128]
lea eax, [ebp - 0x80]
push eax
call fcn.0048f530
lea ecx, [ebp - 0x138]
push ecx
mov ecx, eax
call fcn.00488230
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x130]
push dword [ebp - 0x138]
call fcn.0048c330
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x360]
call fcn.0040b870
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x108]
cmp ecx, 0x10
jb 0x44bedb
mov edx, dword [ebp - 0x11c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x44bed1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44bf63
push ecx
push edx
call fcn.004e6a11
add esp, 8
mov dword [ebp - 0x10c], 0
mov dword [ebp - 0x108], 0xf
mov byte [ebp - 0x11c], 0
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x3d8]
call fcn.0040b870
mov edi, dword [ebp - 0x34]
push edi
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc edi
add edi, eax
mov dword [ebp - 0x34], edi
cmp byte [edi], 0
jne 0x44a211
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x378]
call fcn.0040b870
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x390]
call fcn.0040b870
mov byte [ebp - 4], 0
lea ecx, [ebp + 8]
call fcn.0040b870
mov eax, dword [ebp - 0x128]
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 - 0x30]
call fcn.0048c950
push eax
lea ecx, [ebp - 0x560]
call fcn.0040b750
mov byte [ebp - 4], 0x3e
mov edx, str.cannot_use_operator___with_a_string_argument_with
push eax
lea ecx, [ebp - 0x578]
call fcn.0048f320
mov byte [ebp - 4], 0x3f
mov edx, 0x131
push eax
lea ecx, [ebp - 0x410]
call fcn.00412b50
add esp, 8
lea eax, [ebp - 0x410]
push 0x56c680
push eax
call fcn.004fe48b
lea ecx, [ebp - 0x30]
call fcn.0048c950
push eax
lea ecx, [ebp - 0x590]
call fcn.0040b750
mov byte [ebp - 4], 0x39
mov edx, str.cannot_use_operator___with_a_string_argument_with
push eax
lea ecx, [ebp - 0x5a8]
call fcn.0048f320
mov byte [ebp - 4], 0x3a
mov edx, 0x131
push eax
lea ecx, [ebp - 0x42c]
call fcn.00412b50
add esp, 8
lea eax, [ebp - 0x42c]
push 0x56c680
push eax
call fcn.004fe48b
lea ecx, [ebp - 0x30]
call fcn.0048c950
push eax
lea ecx, [ebp - 0x5c0]
call fcn.0040b750
mov byte [ebp - 4], 0x34
mov edx, str.cannot_use_operator___with_a_string_argument_with
push eax
lea ecx, [ebp - 0x5d8]
call fcn.0048f320
mov byte [ebp - 4], 0x35
mov edx, 0x131
push eax
lea ecx, [ebp - 0x448]
call fcn.00412b50
add esp, 8
lea eax, [ebp - 0x448]
push 0x56c680
push eax
call fcn.004fe48b
lea ecx, [ebp - 0x30]
call fcn.0048c950
push eax
lea ecx, [ebp - 0x608]
call fcn.0040b750
mov byte [ebp - 4], 0x2f
mov edx, str.cannot_use_operator___with_a_string_argument_with
push eax
lea ecx, [ebp - 0x620]
call fcn.0048f320
mov byte [ebp - 4], 0x30
mov edx, 0x131
push eax
lea ecx, [ebp - 0x464]
call fcn.00412b50
add esp, 8
lea eax, [ebp - 0x464]
push 0x56c680
push eax
call fcn.004fe48b
lea ecx, [ebp - 0x30]
call fcn.0048c950
push eax
lea ecx, [ebp - 0x638]
call fcn.0040b750
mov byte [ebp - 4], 0x28
mov edx, str.cannot_use_operator___with_a_string_argument_with
push eax
lea ecx, [ebp - 0x4d0]
call fcn.0048f320
mov byte [ebp - 4], 0x29
mov edx, 0x131
push eax
lea ecx, [ebp - 0x480]
call fcn.00412b50
add esp, 8
lea eax, [ebp - 0x480]
push 0x56c680
push eax
call fcn.004fe48b
lea ecx, [ebp - 0x30]
call fcn.0048c950
push eax
lea ecx, [ebp - 0x4e8]
call fcn.0040b750
mov byte [ebp - 4], 0x23
mov edx, str.cannot_use_operator___with_a_string_argument_with
push eax
lea ecx, [ebp - 0x500]
call fcn.0048f320
mov byte [ebp - 4], 0x24
mov edx, 0x131
push eax
lea ecx, [ebp - 0x3f4]
call fcn.00412b50
add esp, 8
lea eax, [ebp - 0x3f4]
push 0x56c680
push eax
call fcn.004fe48b
lea ecx, [ebp - 0x30]
call fcn.0048c950
push eax
lea ecx, [ebp - 0x518]
call fcn.0040b750
mov byte [ebp - 4], 0x1c
mov edx, str.cannot_use_operator___with_a_string_argument_with
push eax
lea ecx, [ebp - 0x530]
call fcn.0048f320
mov byte [ebp - 4], 0x1d
mov edx, 0x131
push eax
lea ecx, [ebp - 0x49c]
call fcn.00412b50
add esp, 8
lea eax, [ebp - 0x49c]
push 0x56c680
push eax
call fcn.004fe48b
lea ecx, [ebp - 0x138]
call fcn.0048c950
push eax
lea ecx, [ebp - 0x548]
call fcn.0040b750
mov byte [ebp - 4], 0x15
mov edx, str.cannot_use_operator___with_a_string_argument_with
push eax
lea ecx, [ebp - 0x5f0]
call fcn.0048f320
mov byte [ebp - 4], 0x16
mov edx, 0x131
push eax
lea ecx, [ebp - 0x4b8]
call fcn.00412b50
add esp, 8
lea eax, [ebp - 0x4b8]
push 0x56c680
push eax
call fcn.004fe48b
int3