Function at 0x416680
Capabilities:
Contain obfuscated stackstrings
Create directory
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5a2dc8
mov eax, dword fs:[0]
push eax
sub esp, 0x814
mov eax, dword [0x60dae4]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x450], ecx
mov dword [ebp - 0x7b0], 0
push 0x104
push 0
lea eax, [ebp - 0x398]
push eax
call fcn.00575a80
add esp, 0xc
push 0x104
lea ecx, [ebp - 0x398]
push ecx
push 0
call fcn.0059d8f0
add esp, 0xc
lea edx, [ebp - 0x398]
push edx
mov ecx, dword [ebp - 0x450]
add ecx, 1
call fcn.00599e90
mov byte [ebp - 0x457], al
mov ecx, dword [ebp - 0x450]
add ecx, 1
call fcn.00599e80
mov byte [ebp - 0x449], 0
mov byte [ebp - 0x451], 0
mov byte [ebp - 0x455], 0
mov eax, dword [ebp - 0x450]
movzx ecx, byte [eax + 4]
test ecx, ecx
jne 0x416bd5
lea edx, [ebp - 0x41c]
push edx
call fcn.0059d6b0
push eax
call fcn.00409790
add esp, 8
mov dword [ebp - 0x478], eax
mov eax, 2
shl eax, 0
mov ecx, 0x68
mov word [ebp + eax - 0x164], cx
mov edx, 2
shl edx, 1
mov dword [ebp - 0x548], edx
cmp dword [ebp - 0x548], 6
jae 0x41677f
jmp 0x416784
call fcn.00573527
xor eax, eax
mov ecx, dword [ebp - 0x548]
mov word [ebp + ecx - 0x164], ax
mov edx, 2
imul eax, edx, 0
mov ecx, 0x2f
mov word [ebp + eax - 0x164], cx
mov edx, 2
shl edx, 1
mov dword [ebp - 0x54c], edx
cmp dword [ebp - 0x54c], 6
jae 0x4167c1
jmp 0x4167c6
call fcn.00573527
xor eax, eax
mov ecx, dword [ebp - 0x54c]
mov word [ebp + ecx - 0x16c], ax
mov edx, 2
shl edx, 0
mov eax, 0x6c
mov word [ebp + edx - 0x16c], ax
mov ecx, 2
imul edx, ecx, 0
mov eax, 0x2f
mov word [ebp + edx - 0x16c], ax
mov ecx, 2
imul edx, ecx, 0xc
mov eax, 0x73
mov word [ebp + edx - 0x190], ax
mov ecx, 2
shl ecx, 1
mov edx, 0x68
mov word [ebp + ecx - 0x190], dx
mov eax, 2
shl eax, 4
mov dword [ebp - 0x550], eax
cmp dword [ebp - 0x550], 0x22
jae 0x416842
jmp 0x416847
call fcn.00573527
xor ecx, ecx
mov edx, dword [ebp - 0x550]
mov word [ebp + edx - 0x190], cx
mov eax, 2
imul ecx, eax, 0xf
mov edx, 0x6e
mov word [ebp + ecx - 0x190], dx
mov eax, 2
imul ecx, eax, 0
mov edx, 0x2f
mov word [ebp + ecx - 0x190], dx
mov eax, 2
imul ecx, eax, 0xd
mov edx, 0x69
mov word [ebp + ecx - 0x190], dx
mov eax, 2
shl eax, 3
mov ecx, 0x78
mov word [ebp + eax - 0x190], cx
mov edx, 2
shl edx, 2
mov eax, 0x6f
mov word [ebp + edx - 0x190], ax
mov ecx, 2
imul edx, ecx, 0xe
mov eax, 0x6f
mov word [ebp + edx - 0x190], ax
mov ecx, 2
imul edx, ecx, 7
mov eax, 0x65
mov word [ebp + edx - 0x190], ax
mov ecx, 2
imul edx, ecx, 3
mov eax, 0x72
mov word [ebp + edx - 0x190], ax
mov ecx, 2
imul edx, ecx, 9
mov eax, 0x74
mov word [ebp + edx - 0x190], ax
mov ecx, 2
imul edx, ecx, 5
mov eax, 0x6d
mov word [ebp + edx - 0x190], ax
mov ecx, 2
imul edx, ecx, 6
mov eax, 0x65
mov word [ebp + edx - 0x190], ax
mov ecx, 2
shl ecx, 0
mov edx, 0x63
mov word [ebp + ecx - 0x190], dx
mov eax, 2
imul ecx, eax, 0xa
mov edx, 0x65
mov word [ebp + ecx - 0x190], dx
mov eax, 2
imul ecx, eax, 0xb
mov edx, 0x6e
mov word [ebp + ecx - 0x190], dx
cmp dword [ebp - 0x478], 0
je 0x416bd3
cmp dword [ebp - 0x41c], 1
jle 0x416bd3
mov dword [ebp - 0x468], 1
jmp 0x4169b2
mov eax, dword [ebp - 0x468]
add eax, 1
mov dword [ebp - 0x468], eax
mov ecx, dword [ebp - 0x468]
cmp ecx, dword [ebp - 0x41c]
jge 0x416bd3
lea edx, [ebp - 0x164]
mov dword [ebp - 0x484], edx
mov eax, dword [ebp - 0x468]
mov ecx, dword [ebp - 0x478]
mov edx, dword [ecx + eax*4]
mov dword [ebp - 0x488], edx
mov eax, dword [ebp - 0x488]
mov cx, word [eax]
mov word [ebp - 0x4a8], cx
mov edx, dword [ebp - 0x484]
cmp cx, word [edx]
jne 0x416a4b
cmp word [ebp - 0x4a8], 0
je 0x416a3f
mov eax, dword [ebp - 0x488]
mov cx, word [eax + 2]
mov word [ebp - 0x4a6], cx
mov edx, dword [ebp - 0x484]
cmp cx, word [edx + 2]
jne 0x416a4b
add dword [ebp - 0x488], 4
add dword [ebp - 0x484], 4
cmp word [ebp - 0x4a6], 0
jne 0x4169e5
mov dword [ebp - 0x558], 0
jmp 0x416a56
sbb eax, eax
or eax, 1
mov dword [ebp - 0x558], eax
mov ecx, dword [ebp - 0x558]
mov dword [ebp - 0x61c], ecx
cmp dword [ebp - 0x61c], 0
jne 0x416a72
mov byte [ebp - 0x449], 1
lea edx, [ebp - 0x16c]
mov dword [ebp - 0x47c], edx
mov eax, dword [ebp - 0x468]
mov ecx, dword [ebp - 0x478]
mov edx, dword [ecx + eax*4]
mov dword [ebp - 0x480], edx
mov eax, dword [ebp - 0x480]
mov cx, word [eax]
mov word [ebp - 0x4a4], cx
mov edx, dword [ebp - 0x47c]
cmp cx, word [edx]
jne 0x416af9
cmp word [ebp - 0x4a4], 0
je 0x416aed
mov eax, dword [ebp - 0x480]
mov cx, word [eax + 2]
mov word [ebp - 0x4a2], cx
mov edx, dword [ebp - 0x47c]
cmp cx, word [edx + 2]
jne 0x416af9
add dword [ebp - 0x480], 4
add dword [ebp - 0x47c], 4
cmp word [ebp - 0x4a2], 0
jne 0x416a93
mov dword [ebp - 0x4f0], 0
jmp 0x416b04
sbb eax, eax
or eax, 1
mov dword [ebp - 0x4f0], eax
mov ecx, dword [ebp - 0x4f0]
mov dword [ebp - 0x6a4], ecx
cmp dword [ebp - 0x6a4], 0
jne 0x416b20
mov byte [ebp - 0x451], 1
lea edx, [ebp - 0x190]
mov dword [ebp - 0x474], edx
mov eax, dword [ebp - 0x468]
mov ecx, dword [ebp - 0x478]
mov edx, dword [ecx + eax*4]
mov dword [ebp - 0x470], edx
mov eax, dword [ebp - 0x470]
mov cx, word [eax]
mov word [ebp - 0x4a0], cx
mov edx, dword [ebp - 0x474]
cmp cx, word [edx]
jne 0x416ba7
cmp word [ebp - 0x4a0], 0
je 0x416b9b
mov eax, dword [ebp - 0x470]
mov cx, word [eax + 2]
mov word [ebp - 0x49e], cx
mov edx, dword [ebp - 0x474]
cmp cx, word [edx + 2]
jne 0x416ba7
add dword [ebp - 0x470], 4
add dword [ebp - 0x474], 4
cmp word [ebp - 0x49e], 0
jne 0x416b41
mov dword [ebp - 0x4f4], 0
jmp 0x416bb2
sbb eax, eax
or eax, 1
mov dword [ebp - 0x4f4], eax
mov ecx, dword [ebp - 0x4f4]
mov dword [ebp - 0x6a8], ecx
cmp dword [ebp - 0x6a8], 0
jne 0x416bce
mov byte [ebp - 0x455], 1
jmp 0x4169a3
jmp 0x416bfa
mov edx, dword [ebp - 0x450]
mov al, byte [edx + 2]
mov byte [ebp - 0x449], al
mov ecx, dword [ebp - 0x450]
mov dl, byte [ecx + 3]
mov byte [ebp - 0x451], dl
mov byte [ebp - 0x455], 1
call fcn.0059a600
mov byte [ebp - 0x456], al
movzx eax, byte [ebp - 0x456]
test eax, eax
jne 0x416c27
movzx ecx, byte [ebp - 0x457]
test ecx, ecx
je 0x416c27
mov dword [ebp - 0x4f8], 0
jmp 0x416c31
mov dword [ebp - 0x4f8], 1
mov dl, byte [ebp - 0x4f8]
mov byte [ebp - 0x461], dl
xor eax, eax
mov dword [ebp - 0x3dc], eax
lea ecx, [ebp - 0x3dc]
push ecx
call fcn.004034e0
add esp, 4
mov dword [ebp - 4], 0
xor edx, edx
mov dword [ebp - 0x3b8], edx
lea eax, [ebp - 0x3b8]
push eax
mov ecx, dword [ebp - 0x450]
add ecx, 1
call fcn.0041d0f0
mov byte [ebp - 4], 1
xor ecx, ecx
mov dword [ebp - 0x39c], ecx
lea edx, [ebp - 0x39c]
push edx
call fcn.005a0fc0
add esp, 4
mov byte [ebp - 4], 2
mov eax, dword [ebp - 0x39c]
mov dword [ebp - 0x6d4], eax
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x770], esp
mov edx, dword [ebp - 0x6d4]
push edx
call fcn.0042aeb0
mov ecx, dword [ebp - 0x450]
add ecx, 1
call fcn.00406ba0
mov byte [ebp - 0x45c], al
mov al, byte [ebp - 0x45c]
mov byte [ebp - 0x45d], al
movzx ecx, byte [ebp - 0x45d]
test ecx, ecx
jne 0x416d47
mov byte [ebp - 4], 1
mov edx, dword [ebp - 0x39c]
sub edx, 0x10
mov dword [ebp - 0x6dc], edx
mov ecx, dword [ebp - 0x6dc]
call fcn.0042cb50
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0x3b8]
sub eax, 0x10
mov dword [ebp - 0x6f8], eax
mov ecx, dword [ebp - 0x6f8]
call fcn.0042cb50
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x3dc]
sub ecx, 0x10
mov dword [ebp - 0x700], ecx
mov ecx, dword [ebp - 0x700]
call fcn.0042cb50
jmp 0x419a8c
xor edx, edx
mov dword [ebp - 0x3d8], edx
lea eax, [ebp - 0x3d8]
push eax
call fcn.00414760
add esp, 4
mov byte [ebp - 4], 3
call fcn.00404b70
test eax, eax
je 0x416d74
mov byte [ebp - 0x454], 1
jmp 0x416d7b
mov byte [ebp - 0x454], 0
mov cl, byte [ebp - 0x454]
mov byte [ebp - 0x459], cl
call fcn.00404b70
test eax, eax
je 0x416d99
mov byte [ebp - 0x453], 1
jmp 0x416da0
mov byte [ebp - 0x453], 0
mov dl, byte [ebp - 0x453]
mov byte [ebp - 0x45e], dl
mov byte [ebp - 0x458], 0
xor eax, eax
mov dword [ebp - 0x3cc], eax
call fcn.0043c0af
push eax
lea ecx, [ebp - 0x3cc]
call fcn.0042ce10
mov byte [ebp - 4], 4
mov dword [ebp - 0x498], 0
jmp 0x416deb
mov ecx, dword [ebp - 0x498]
add ecx, 1
mov dword [ebp - 0x498], ecx
cmp dword [ebp - 0x498], 5
jge 0x416eab
xor edx, edx
mov dword [ebp - 0x3f8], edx
call fcn.0043c0af
push eax
lea ecx, [ebp - 0x3f8]
call fcn.0042ce10
mov byte [ebp - 4], 5
lea eax, [ebp - 0x448]
push eax
lea ecx, [ebp - 0x3cc]
push ecx
lea edx, [ebp - 0x3f8]
push edx
lea eax, [ebp - 0x3a9]
push eax
movzx ecx, byte [ebp - 0x45e]
push ecx
call fcn.00598fe0
add esp, 0x14
movzx edx, al
test edx, edx
je 0x416e7b
mov al, byte [ebp - 0x3a9]
mov byte [ebp - 0x459], al
mov byte [ebp - 0x458], 1
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x3f8]
sub ecx, 0x10
mov dword [ebp - 0x704], ecx
mov ecx, dword [ebp - 0x704]
call fcn.0042cb50
jmp 0x416eab
push 0x3e8
call fcn.0040a8b0
add esp, 4
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x3f8]
sub edx, 0x10
mov dword [ebp - 0x708], edx
mov ecx, dword [ebp - 0x708]
call fcn.0042cb50
jmp 0x416ddc
xor eax, eax
mov dword [ebp - 0x3f4], eax
movzx ecx, byte [ebp - 0x458]
test ecx, ecx
je 0x416eca
mov dword [ebp - 0x500], 0x5ed730
jmp 0x416ed4
mov dword [ebp - 0x500], 0x5ed7a4
mov edx, dword [ebp - 0x500]
push edx
lea ecx, [ebp - 0x3f4]
call fcn.0042d800
mov byte [ebp - 4], 6
mov eax, 1
imul ecx, eax, 6
mov byte [ebp + ecx - 0x60], 0x74
mov edx, 1
imul eax, edx, 7
mov dword [ebp - 0x504], eax
cmp dword [ebp - 0x504], 8
jae 0x416f10
jmp 0x416f15
call fcn.00573527
mov ecx, dword [ebp - 0x504]
mov byte [ebp + ecx - 0x60], 0
mov edx, 1
imul eax, edx, 0
mov byte [ebp + eax - 0x60], 0x63
mov ecx, 1
shl ecx, 2
mov byte [ebp + ecx - 0x60], 0x6e
mov edx, 1
imul eax, edx, 3
mov byte [ebp + eax - 0x60], 0x69
mov ecx, 1
imul edx, ecx, 5
mov byte [ebp + edx - 0x60], 0x73
mov eax, 1
shl eax, 0
mov byte [ebp + eax - 0x60], 0x68
mov ecx, 1
shl ecx, 1
mov byte [ebp + ecx - 0x60], 0x72
push 0x5ed7cc
lea edx, [ebp - 0x720]
push edx
call fcn.00596460
add esp, 8
mov dword [ebp - 0x70c], eax
mov eax, dword [ebp - 0x70c]
mov dword [ebp - 0x710], eax
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x3f4]
mov edx, dword [ecx - 0xc]
mov dword [ebp - 0x714], edx
mov eax, dword [ebp - 0x3f4]
mov dword [ebp - 0x718], eax
mov ecx, dword [ebp - 0x710]
mov edx, dword [ecx]
mov dword [ebp - 0x71c], edx
mov eax, dword [ebp - 0x714]
push eax
mov ecx, dword [ebp - 0x718]
push ecx
push 1
lea edx, [ebp - 0x60]
push edx
mov eax, dword [ebp - 0x71c]
push eax
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.00421820
add esp, 0x18
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x720]
sub ecx, 0x10
mov dword [ebp - 0x724], ecx
mov ecx, dword [ebp - 0x724]
call fcn.0042cb50
mov edx, dword [ebp - 0x3cc]
mov eax, dword [edx - 0xc]
mov dword [ebp - 0x728], eax
cmp dword [ebp - 0x728], 0
jle 0x417096
mov ecx, dword [ebp - 0x3cc]
sub ecx, 0x10
mov dword [ebp - 0x72c], ecx
mov edx, dword [ebp - 0x72c]
push edx
call fcn.004308b0
add esp, 4
mov dword [ebp - 0x730], eax
mov eax, dword [ebp - 0x730]
add eax, 0x10
mov dword [ebp - 0x508], eax
lea ecx, [ebp - 0x508]
mov dword [ebp - 0x734], ecx
mov byte [ebp - 4], 8
mov edx, dword [ebp - 0x734]
push edx
lea ecx, [ebp - 0x3d8]
call fcn.004307e0
mov byte [ebp - 4], 6
mov eax, dword [ebp - 0x508]
sub eax, 0x10
mov dword [ebp - 0x738], eax
mov ecx, dword [ebp - 0x738]
call fcn.0042cb50
jmp 0x417117
mov ecx, 0x5ed7a4
test ecx, ecx
jne 0x4170ab
mov dword [ebp - 0x50c], 0
jmp 0x417100
mov dword [ebp - 0x46c], 0x5ed7a4
mov edx, dword [ebp - 0x46c]
add edx, 1
mov dword [ebp - 0x73c], edx
mov eax, dword [ebp - 0x46c]
mov cl, byte [eax]
mov byte [ebp - 0x45f], cl
add dword [ebp - 0x46c], 1
cmp byte [ebp - 0x45f], 0
jne 0x4170c4
mov edx, dword [ebp - 0x46c]
sub edx, dword [ebp - 0x73c]
mov dword [ebp - 0x740], edx
mov eax, dword [ebp - 0x740]
mov dword [ebp - 0x50c], eax
mov ecx, dword [ebp - 0x50c]
push ecx
push 0x5ed7a4
lea ecx, [ebp - 0x3d8]
call fcn.0042d6c0
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x3f4]
sub edx, 0x10
mov dword [ebp - 0x744], edx
mov ecx, dword [ebp - 0x744]
call fcn.0042cb50
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x3cc]
sub eax, 0x10
mov dword [ebp - 0x748], eax
mov ecx, dword [ebp - 0x748]
call fcn.0042cb50
xor ecx, ecx
mov dword [ebp - 0x414], ecx
lea edx, [ebp - 0x414]
push edx
mov ecx, dword [ebp - 0x450]
add ecx, 1
call fcn.00407410
mov byte [ebp - 4], 9
xor eax, eax
mov dword [ebp - 0x40c], eax
lea ecx, [ebp - 0x40c]
push ecx
mov ecx, dword [ebp - 0x450]
add ecx, 1
call fcn.00599a60
mov byte [ebp - 4], 0xa
xor edx, edx
mov dword [ebp - 0x3b4], edx
call fcn.0043c0af
push eax
lea ecx, [ebp - 0x3b4]
call fcn.0042ce10
mov byte [ebp - 4], 0xb
xor eax, eax
mov dword [ebp - 0x3d4], eax
call fcn.0043c0af
push eax
lea ecx, [ebp - 0x3d4]
call fcn.0042ce10
mov byte [ebp - 4], 0xc
mov dword [ebp - 0x494], 0
jmp 0x4171ea
mov ecx, dword [ebp - 0x494]
add ecx, 1
mov dword [ebp - 0x494], ecx
cmp dword [ebp - 0x494], 3
jge 0x417221
lea edx, [ebp - 0x3d4]
push edx
lea eax, [ebp - 0x3b4]
push eax
mov ecx, dword [ebp - 0x450]
call fcn.00403d30
mov byte [ebp - 0x460], al
movzx ecx, byte [ebp - 0x460]
test ecx, ecx
je 0x41721f
jmp 0x417221
jmp 0x4171db
mov edx, 1
shl edx, 1
mov byte [ebp + edx - 0x48c], 0x64
mov eax, 1
shl eax, 0
mov byte [ebp + eax - 0x48c], 0x69
mov ecx, 1
imul edx, ecx, 0
mov byte [ebp + edx - 0x48c], 0x67
mov eax, 1
imul ecx, eax, 3
mov dword [ebp - 0x510], ecx
cmp dword [ebp - 0x510], 4
jae 0x417269
jmp 0x41726e
call fcn.00573527
mov edx, dword [ebp - 0x510]
mov byte [ebp + edx - 0x48c], 0
mov eax, 1
imul ecx, eax, 0
mov byte [ebp + ecx - 0x3e4], 0x63
mov edx, 1
shl edx, 1
mov dword [ebp - 0x4dc], edx
cmp dword [ebp - 0x4dc], 3
jae 0x4172a4
jmp 0x4172a9
call fcn.00573527
mov eax, dword [ebp - 0x4dc]
mov byte [ebp + eax - 0x3e4], 0
mov ecx, 1
shl ecx, 0
mov byte [ebp + ecx - 0x3e4], 0x69
push ecx
mov edx, esp
mov dword [ebp - 0x7b4], esp
mov dword [ebp - 0x754], edx
mov eax, dword [ebp - 0x3b4]
sub eax, 0x10
mov dword [ebp - 0x74c], eax
mov ecx, dword [ebp - 0x74c]
push ecx
call fcn.004308b0
add esp, 4
mov dword [ebp - 0x750], eax
mov edx, dword [ebp - 0x750]
add edx, 0x10
mov eax, dword [ebp - 0x754]
mov dword [eax], edx
mov byte [ebp - 4], 0xd
push ecx
mov ecx, esp
mov dword [ebp - 0x7b8], esp
lea edx, [ebp - 0x3e4]
push edx
call fcn.0042d800
mov dword [ebp - 0x7bc], eax
mov byte [ebp - 4], 0xe
push ecx
mov eax, esp
mov dword [ebp - 0x7c0], esp
push 0x5ed7cc
push eax
call fcn.00596460
add esp, 8
push reloc.OLEAUT32.dll_SysReAllocString
mov byte [ebp - 4], 0xc
call fcn.00597080
add esp, 0x10
mov dword [ebp - 0x514], 1
cmp dword [ebp - 0x514], 2
jae 0x41736b
jmp 0x417370
call fcn.00573527
mov ecx, dword [ebp - 0x514]
mov byte [ebp + ecx - 0x3b0], 0
mov edx, 1
imul eax, edx, 0
mov byte [ebp + eax - 0x3b0], 0x63
push ecx
mov ecx, esp
mov dword [ebp - 0x7c4], esp
mov dword [ebp - 0x568], ecx
mov edx, dword [ebp - 0x3d4]
sub edx, 0x10
mov dword [ebp - 0x560], edx
mov eax, dword [ebp - 0x560]
push eax
call fcn.004308b0
add esp, 4
mov dword [ebp - 0x564], eax
mov ecx, dword [ebp - 0x564]
add ecx, 0x10
mov edx, dword [ebp - 0x568]
mov dword [edx], ecx
mov byte [ebp - 4], 0xf
push ecx
mov ecx, esp
mov dword [ebp - 0x7c8], esp
lea eax, [ebp - 0x3b0]
push eax
call fcn.0042d800
mov dword [ebp - 0x7cc], eax
mov byte [ebp - 4], 0x10
push ecx
mov ecx, esp
mov dword [ebp - 0x7d0], esp
push 0x5ed7cc
push ecx
call fcn.00596460
add esp, 8
push reloc.OLEAUT32.dll_SysReAllocString
mov byte [ebp - 4], 0xc
call fcn.00597080
add esp, 0x10
xor edx, edx
mov dword [ebp - 0x3c8], edx
lea eax, [ebp - 0x3c8]
push eax
call fcn.00415060
add esp, 4
mov byte [ebp - 4], 0x11
push 0x104
push 0
lea ecx, [ebp - 0x294]
push ecx
call fcn.00575a80
add esp, 0xc
push 0
call fcn.004165b0
push eax
lea edx, [ebp - 0x294]
push edx
push 0
call fcn.0059c600
add esp, 0x10
mov eax, dword [ebp - 0x3c8]
mov dword [ebp - 0x56c], eax
mov ecx, dword [ebp - 0x56c]
push ecx
lea edx, [ebp - 0x294]
push edx
call fcn.0040a3c0
add esp, 8
push 0
lea eax, [ebp - 0x294]
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
movzx ecx, byte [ebp - 0x449]
test ecx, ecx
jne 0x4174b2
movzx edx, byte [ebp - 0x451]
test edx, edx
je 0x41829b
mov eax, dword [ebp - 0x39c]
mov dword [ebp - 0x570], eax
mov ecx, dword [ebp - 0x570]
push ecx
lea edx, [ebp - 0x444]
push edx
call fcn.00404320
add esp, 8
mov byte [ebp - 4], 0x12
movzx eax, byte [ebp - 0x461]
test eax, eax
jne 0x4174fc
mov ecx, dword [ebp - 0x434]
mov dword [ebp - 0x574], ecx
cmp dword [ebp - 0x574], 0
jne 0x4176bf
xor edx, edx
mov dword [ebp - 0x3f0], edx
call fcn.0043c0af
push eax
lea ecx, [ebp - 0x3f0]
call fcn.0042ce10
mov byte [ebp - 4], 0x13
xor eax, eax
mov dword [ebp - 0x418], eax
lea ecx, [ebp - 0x418]
push ecx
mov ecx, dword [ebp - 0x450]
add ecx, 1
call fcn.0041d0f0
mov byte [ebp - 4], 0x14
mov edx, 1
imul eax, edx, 6
mov dword [ebp - 0x518], eax
cmp dword [ebp - 0x518], 7
jae 0x417553
jmp 0x417558
call fcn.00573527
mov ecx, dword [ebp - 0x518]
mov byte [ebp + ecx - 0x50], 0
mov edx, 1
shl edx, 0
mov byte [ebp + edx - 0x50], 0x73
mov eax, 1
imul ecx, eax, 0
mov byte [ebp + ecx - 0x50], 0x25
mov edx, 1
shl edx, 1
mov byte [ebp + edx - 0x50], 0x25
mov eax, 1
imul ecx, eax, 3
mov byte [ebp + ecx - 0x50], 0x73
mov edx, 1
shl edx, 2
mov byte [ebp + edx - 0x50], 0x25
mov eax, 1
imul ecx, eax, 5
mov byte [ebp + ecx - 0x50], 0x73
push 0x10
push 0
lea edx, [ebp - 0x580]
push edx
lea ecx, [ebp - 0x418]
call fcn.00432460
mov dword [ebp - 0x578], eax
mov eax, dword [ebp - 0x578]
mov dword [ebp - 0x57c], eax
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x39c]
push ecx
push str.fe52711c45834992b4f3fe919e3b4372
mov edx, dword [ebp - 0x57c]
mov eax, dword [edx]
push eax
lea ecx, [ebp - 0x50]
push ecx
lea edx, [ebp - 0x3f0]
push edx
call fcn.004307b0
add esp, 0x14
mov byte [ebp - 4], 0x14
mov eax, dword [ebp - 0x580]
sub eax, 0x10
mov dword [ebp - 0x584], eax
mov ecx, dword [ebp - 0x584]
call fcn.0042cb50
mov ecx, dword [ebp - 0x3f0]
mov dword [ebp - 0x588], ecx
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x7d4], esp
mov edx, dword [ebp - 0x588]
push edx
call fcn.0042aeb0
lea eax, [ebp - 0x820]
push eax
call fcn.005960d0
add esp, 0x1c
mov dword [ebp - 0x58c], eax
mov ecx, dword [ebp - 0x58c]
mov dword [ebp - 0x590], ecx
mov edx, dword [ebp - 0x590]
push edx
lea ecx, [ebp - 0x444]
call fcn.0042ae50
lea ecx, [ebp - 0x820]
call fcn.0042c1f0
mov byte [ebp - 4], 0x13
mov eax, dword [ebp - 0x418]
sub eax, 0x10
mov dword [ebp - 0x594], eax
mov ecx, dword [ebp - 0x594]
call fcn.0042cb50
mov byte [ebp - 4], 0x12
mov ecx, dword [ebp - 0x3f0]
sub ecx, 0x10
mov dword [ebp - 0x598], ecx
mov ecx, dword [ebp - 0x598]
call fcn.0042cb50
xor edx, edx
mov dword [ebp - 0x400], edx
lea eax, [ebp - 0x400]
push eax
call fcn.005986f0
add esp, 4
mov byte [ebp - 4], 0x16
push 0x5ed7cc
lea ecx, [ebp - 0x5bc]
push ecx
call fcn.00596460
add esp, 8
mov dword [ebp - 0x59c], eax
mov edx, dword [ebp - 0x59c]
mov dword [ebp - 0x5a8], edx
mov byte [ebp - 4], 0x17
mov eax, dword [ebp - 0x434]
mov dword [ebp - 0x5ac], eax
lea ecx, [ebp - 0x444]
mov dword [ebp - 0x4b8], ecx
mov edx, dword [ebp - 0x4b8]
mov dword [ebp - 0x520], edx
mov eax, dword [ebp - 0x4b8]
cmp dword [eax + 0x14], 0x10
jb 0x417740
mov dword [ebp - 0x51c], 1
jmp 0x41774a
mov dword [ebp - 0x51c], 0
mov cl, byte [ebp - 0x51c]
mov byte [ebp - 0x462], cl
movzx edx, byte [ebp - 0x462]
test edx, edx
je 0x41777b
mov eax, dword [ebp - 0x4b8]
mov ecx, dword [eax]
mov dword [ebp - 0x5a0], ecx
mov edx, dword [ebp - 0x5a0]
mov dword [ebp - 0x520], edx
mov eax, dword [ebp - 0x520]
mov dword [ebp - 0x5a4], eax
mov ecx, dword [ebp - 0x5a4]
mov dword [ebp - 0x5b0], ecx
mov edx, dword [ebp - 0x400]
mov dword [ebp - 0x5b4], edx
mov eax, dword [ebp - 0x5a8]
mov ecx, dword [eax]
mov dword [ebp - 0x5b8], ecx
mov edx, dword [ebp - 0x5ac]
push edx
mov eax, dword [ebp - 0x5b0]
push eax
push 1
mov ecx, dword [ebp - 0x5b4]
push ecx
mov edx, dword [ebp - 0x5b8]
push edx
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.00421820
add esp, 0x18
mov byte [ebp - 4], 0x16
mov eax, dword [ebp - 0x5bc]
sub eax, 0x10
mov dword [ebp - 0x5c0], eax
mov ecx, dword [ebp - 0x5c0]
call fcn.0042cb50
xor ecx, ecx
mov dword [ebp - 0x3a0], ecx
call fcn.0043c0af
push eax
lea ecx, [ebp - 0x3a0]
call fcn.0042ce10
mov byte [ebp - 4], 0x18
mov edx, 1
shl edx, 2
mov byte [ebp + edx - 0xdc], 0x63
mov eax, 1
shl eax, 1
mov byte [ebp + eax - 0xdc], 0x69
mov ecx, 1
imul edx, ecx, 0xd
mov byte [ebp + edx - 0xdc], 0x64
mov eax, 1
shl eax, 3
mov byte [ebp + eax - 0xdc], 0x5f
mov ecx, 1
imul edx, ecx, 0x11
mov dword [ebp - 0x524], edx
cmp dword [ebp - 0x524], 0x12
jae 0x41786b
jmp 0x417870
call fcn.00573527
mov eax, dword [ebp - 0x524]
mov byte [ebp + eax - 0xdc], 0
mov ecx, 1
imul edx, ecx, 9
mov byte [ebp + edx - 0xdc], 0x25
mov eax, 1
imul ecx, eax, 0xb
mov byte [ebp + ecx - 0xdc], 0x5f
mov edx, 1
imul eax, edx, 0xc
mov byte [ebp + eax - 0xdc], 0x25
mov ecx, 1
imul edx, ecx, 0xf
mov byte [ebp + edx - 0xdc], 0x25
mov eax, 1
shl eax, 0
mov byte [ebp + eax - 0xdc], 0x74
mov ecx, 1
imul edx, ecx, 6
mov byte [ebp + edx - 0xdc], 0x25
mov eax, 1
imul ecx, eax, 3
mov byte [ebp + ecx - 0xdc], 0x6e
mov edx, 1
imul eax, edx, 7
mov byte [ebp + eax - 0xdc], 0x64
mov ecx, 1
shl ecx, 4
mov byte [ebp + ecx - 0xdc], 0x73
mov edx, 1
imul eax, edx, 0
mov byte [ebp + eax - 0xdc], 0x69
mov ecx, 1
imul edx, ecx, 0xe
mov byte [ebp + edx - 0xdc], 0x5f
mov eax, 1
imul ecx, eax, 5
mov byte [ebp + ecx - 0xdc], 0x5f
mov edx, 1
imul eax, edx, 0xa
mov byte [ebp + eax - 0xdc], 0x64
lea ecx, [ebp - 0x444]
mov dword [ebp - 0x4b4], ecx
mov edx, dword [ebp - 0x4b4]
mov dword [ebp - 0x52c], edx
mov eax, dword [ebp - 0x4b4]
cmp dword [eax + 0x14], 0x10
jb 0x41797e
mov dword [ebp - 0x528], 1
jmp 0x417988
mov dword [ebp - 0x528], 0
mov cl, byte [ebp - 0x528]
mov byte [ebp - 0x45b], cl
movzx edx, byte [ebp - 0x45b]
test edx, edx
je 0x4179b9
mov eax, dword [ebp - 0x4b4]
mov ecx, dword [eax]
mov dword [ebp - 0x5c4], ecx
mov edx, dword [ebp - 0x5c4]
mov dword [ebp - 0x52c], edx
mov eax, dword [ebp - 0x52c]
mov dword [ebp - 0x5c8], eax
mov ecx, dword [ebp - 0x5c8]
mov dword [ebp - 0x5cc], ecx
mov edx, dword [ebp - 0x434]
mov dword [ebp - 0x5d0], edx
mov eax, dword [ebp - 0x5cc]
push eax
mov ecx, dword [ebp - 0x5d0]
push ecx
movzx edx, byte [ebp - 0x457]
push edx
movzx eax, byte [ebp - 0x456]
push eax
lea ecx, [ebp - 0xdc]
push ecx
lea edx, [ebp - 0x3a0]
push edx
call fcn.004307b0
add esp, 0x18
push 0x2d
push 0x2b
lea ecx, [ebp - 0x3a0]
call fcn.004329f0
push 0x5f
push 0x2f
lea ecx, [ebp - 0x3a0]
call fcn.004329f0
push 0x20
push 0x3d
lea ecx, [ebp - 0x3a0]
call fcn.004329f0
lea ecx, [ebp - 0x3a0]
call fcn.00432ca0
mov ecx, eax
call fcn.00432b30
push ecx
mov eax, esp
mov dword [ebp - 0x7d8], esp
mov dword [ebp - 0x5dc], eax
mov ecx, dword [ebp - 0x3a0]
sub ecx, 0x10
mov dword [ebp - 0x5d4], ecx
mov edx, dword [ebp - 0x5d4]
push edx
call fcn.004308b0
add esp, 4
mov dword [ebp - 0x5d8], eax
mov eax, dword [ebp - 0x5d8]
add eax, 0x10
mov ecx, dword [ebp - 0x5dc]
mov dword [ecx], eax
mov byte [ebp - 4], 0x19
push ecx
mov edx, esp
mov dword [ebp - 0x7dc], esp
mov dword [ebp - 0x5e8], edx
mov eax, dword [ebp - 0x39c]
sub eax, 0x10
mov dword [ebp - 0x5e0], eax
mov ecx, dword [ebp - 0x5e0]
push ecx
call fcn.004308b0
add esp, 4
mov dword [ebp - 0x5e4], eax
mov edx, dword [ebp - 0x5e4]
add edx, 0x10
mov eax, dword [ebp - 0x5e8]
mov dword [eax], edx
mov byte [ebp - 4], 0x18
call fcn.005997c0
add esp, 8
xor ecx, ecx
mov dword [ebp - 0x3ec], ecx
lea edx, [ebp - 0x294]
push edx
lea ecx, [ebp - 0x3ec]
call fcn.0042d800
mov byte [ebp - 4], 0x1a
mov eax, 1
shl eax, 0
mov byte [ebp + eax - 0x20], 0x64
mov ecx, 1
shl ecx, 2
mov dword [ebp - 0x530], ecx
cmp dword [ebp - 0x530], 5
jae 0x417b2c
jmp 0x417b31
call fcn.00573527
mov edx, dword [ebp - 0x530]
mov byte [ebp + edx - 0x20], 0
mov eax, 1
shl eax, 1
mov byte [ebp + eax - 0x20], 0x61
mov ecx, 1
imul edx, ecx, 3
mov byte [ebp + edx - 0x20], 0x74
mov eax, 1
imul ecx, eax, 0
mov byte [ebp + ecx - 0x20], 0x2e
lea edx, [ebp - 0x400]
push edx
push 0x5ed72c
lea eax, [ebp - 0x608]
push eax
call fcn.00432220
add esp, 0xc
mov dword [ebp - 0x5ec], eax
mov ecx, dword [ebp - 0x5ec]
mov dword [ebp - 0x5f0], ecx
mov byte [ebp - 4], 0x1b
lea edx, [ebp - 0x20]
push edx
mov eax, dword [ebp - 0x5f0]
push eax
lea ecx, [ebp - 0x600]
push ecx
call fcn.00432340
add esp, 0xc
mov dword [ebp - 0x5f4], eax
mov edx, dword [ebp - 0x5f4]
mov dword [ebp - 0x534], edx
mov byte [ebp - 4], 0x1c
mov eax, dword [ebp - 0x534]
mov ecx, dword [eax]
mov edx, dword [ecx - 0xc]
mov dword [ebp - 0x5f8], edx
mov eax, dword [ebp - 0x534]
mov ecx, dword [eax]
mov dword [ebp - 0x5fc], ecx
mov edx, dword [ebp - 0x5f8]
push edx
mov eax, dword [ebp - 0x5fc]
push eax
lea ecx, [ebp - 0x3ec]
call fcn.00431db0
mov byte [ebp - 4], 0x1b
mov ecx, dword [ebp - 0x600]
sub ecx, 0x10
mov dword [ebp - 0x604], ecx
mov ecx, dword [ebp - 0x604]
call fcn.0042cb50
mov byte [ebp - 4], 0x1a
mov edx, dword [ebp - 0x608]
sub edx, 0x10
mov dword [ebp - 0x60c], edx
mov ecx, dword [ebp - 0x60c]
call fcn.0042cb50
mov eax, dword [ebp - 0x3ec]
mov dword [ebp - 0x610], eax
push 0
push 0x80
push 2
push 0
push 0
push 0x40000000
mov ecx, dword [ebp - 0x610]
push ecx
call fcn.004231c0
add esp, 0x1c
mov dword [ebp - 0x544], eax
mov dword [ebp - 0x428], 0
mov edx, dword [ebp - 0x434]
mov dword [ebp - 0x620], edx
lea eax, [ebp - 0x444]
mov dword [ebp - 0x4b0], eax
mov ecx, dword [ebp - 0x4b0]
mov dword [ebp - 0x540], ecx
mov edx, dword [ebp - 0x4b0]
cmp dword [edx + 0x14], 0x10
jb 0x417cb0
mov dword [ebp - 0x538], 1
jmp 0x417cba
mov dword [ebp - 0x538], 0
mov al, byte [ebp - 0x538]
mov byte [ebp - 0x45a], al
movzx ecx, byte [ebp - 0x45a]
test ecx, ecx
je 0x417ceb
mov edx, dword [ebp - 0x4b0]
mov eax, dword [edx]
mov dword [ebp - 0x614], eax
mov ecx, dword [ebp - 0x614]
mov dword [ebp - 0x540], ecx
mov edx, dword [ebp - 0x540]
mov dword [ebp - 0x618], edx
mov eax, dword [ebp - 0x618]
mov dword [ebp - 0x624], eax
push 0
lea ecx, [ebp - 0x428]
push ecx
mov edx, dword [ebp - 0x620]
push edx
mov eax, dword [ebp - 0x624]
push eax
mov ecx, dword [ebp - 0x544]
push ecx
call fcn.0059eaf0
add esp, 0x14
mov edx, dword [ebp - 0x544]
push edx
call fcn.0040aa70
add esp, 4
mov byte [ebp - 4], 0x18
mov eax, dword [ebp - 0x3ec]
sub eax, 0x10
mov dword [ebp - 0x628], eax
mov ecx, dword [ebp - 0x628]
call fcn.0042cb50
mov ecx, 1
shl ecx, 1
mov byte [ebp + ecx - 0x3e8], 0x64
mov edx, 1
shl edx, 0
mov byte [ebp + edx - 0x3e8], 0x69
mov eax, 1
imul ecx, eax, 0
mov byte [ebp + ecx - 0x3e8], 0x67
mov edx, 1
imul eax, edx, 3
mov dword [ebp - 0x554], eax
cmp dword [ebp - 0x554], 4
jae 0x417d9e
jmp 0x417da3
call fcn.00573527
mov ecx, dword [ebp - 0x554]
mov byte [ebp + ecx - 0x3e8], 0
push ecx
mov edx, esp
mov dword [ebp - 0x7e0], esp
mov dword [ebp - 0x634], edx
mov eax, dword [ebp - 0x3b8]
sub eax, 0x10
mov dword [ebp - 0x62c], eax
mov ecx, dword [ebp - 0x62c]
push ecx
call fcn.004308b0
add esp, 4
mov dword [ebp - 0x630], eax
mov edx, dword [ebp - 0x630]
add edx, 0x10
mov eax, dword [ebp - 0x634]
mov dword [eax], edx
mov byte [ebp - 4], 0x1d
push ecx
mov ecx, esp
mov dword [ebp - 0x7e4], esp
lea edx, [ebp - 0x3e8]
push edx
call fcn.0042d800
mov dword [ebp - 0x7e8], eax
mov byte [ebp - 4], 0x1e
push ecx
mov eax, esp
mov dword [ebp - 0x7ec], esp
push 0x5ed7cc
push eax
call fcn.00596460
add esp, 8
push reloc.OLEAUT32.dll_SysReAllocString
mov byte [ebp - 4], 0x18
call fcn.00597080
add esp, 0x10
mov ecx, 1
shl ecx, 2
mov byte [ebp + ecx - 0x58], 0x69
mov edx, 1
imul eax, edx, 7
mov dword [ebp - 0x4bc], eax
cmp dword [ebp - 0x4bc], 8
jae 0x417e66
jmp 0x417e6b
call fcn.00573527
mov ecx, dword [ebp - 0x4bc]
mov byte [ebp + ecx - 0x58], 0
mov edx, 1
imul eax, edx, 5
mov byte [ebp + eax - 0x58], 0x63
mov ecx, 1
shl ecx, 1
mov byte [ebp + ecx - 0x58], 0x67
mov edx, 1
shl edx, 0
mov byte [ebp + edx - 0x58], 0x61
mov eax, 1
imul ecx, eax, 0
mov byte [ebp + ecx - 0x58], 0x6d
mov edx, 1
imul eax, edx, 6
mov byte [ebp + eax - 0x58], 0x6f
mov ecx, 1
imul edx, ecx, 3
mov byte [ebp + edx - 0x58], 0x2e
push 0x3ef
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0x294]
push ecx
mov ecx, dword [ebp - 0x450]
call fcn.004140d0
xor edx, edx
mov dword [ebp - 0x410], edx
lea eax, [ebp - 0x294]
push eax
lea ecx, [ebp - 0x410]
call fcn.0042d800
mov byte [ebp - 4], 0x1f
mov ecx, 1
imul edx, ecx, 0xb
mov byte [ebp + edx - 0xb4], 0x2e
mov eax, 1
imul ecx, eax, 0xe
mov byte [ebp + ecx - 0xb4], 0x65
mov edx, 1
imul eax, edx, 0xa
mov byte [ebp + eax - 0xb4], 0x72
mov ecx, 1
imul edx, ecx, 0
mov byte [ebp + edx - 0xb4], 0x55
mov eax, 1
imul ecx, eax, 9
mov byte [ebp + ecx - 0xb4], 0x65
mov edx, 1
imul eax, edx, 0xd
mov byte [ebp + eax - 0xb4], 0x78
mov ecx, 1
imul edx, ecx, 0xf
mov dword [ebp - 0x4c0], edx
cmp dword [ebp - 0x4c0], 0x10
jae 0x417f75
jmp 0x417f7a
call fcn.00573527
mov eax, dword [ebp - 0x4c0]
mov byte [ebp + eax - 0xb4], 0
mov ecx, 1
imul edx, ecx, 3
mov byte [ebp + edx - 0xb4], 0x6e
mov eax, 1
imul ecx, eax, 0xc
mov byte [ebp + ecx - 0xb4], 0x65
mov edx, 1
shl edx, 0
mov byte [ebp + edx - 0xb4], 0x6e
mov eax, 1
shl eax, 3
mov byte [ebp + eax - 0xb4], 0x6c
mov ecx, 1
shl ecx, 1
mov byte [ebp + ecx - 0xb4], 0x69
mov edx, 1
imul eax, edx, 5
mov byte [ebp + eax - 0xb4], 0x74
mov ecx, 1
imul edx, ecx, 6
mov byte [ebp + edx - 0xb4], 0x61
mov eax, 1
imul ecx, eax, 7
mov byte [ebp + ecx - 0xb4], 0x6c
mov edx, 1
shl edx, 2
mov byte [ebp + edx - 0xb4], 0x73
lea eax, [ebp - 0xb4]
push eax
lea ecx, [ebp - 0x294]
push ecx
push 0x8b
mov ecx, dword [ebp - 0x450]
call fcn.00404bb0
mov edx, 1
shl edx, 0
mov byte [ebp + edx - 0xc8], 0x55
mov eax, 1
imul ecx, eax, 0xe
mov byte [ebp + ecx - 0xc8], 0x78
mov edx, 1
imul eax, edx, 0xf
mov byte [ebp + eax - 0xc8], 0x65
mov ecx, 1
imul edx, ecx, 0xa
mov byte [ebp + edx - 0xc8], 0x65
mov eax, 1
imul ecx, eax, 0xc
mov byte [ebp + ecx - 0xc8], 0x2e
mov edx, 1
imul eax, edx, 3
mov byte [ebp + eax - 0xc8], 0x69
mov ecx, 1
shl ecx, 1
mov byte [ebp + ecx - 0xc8], 0x6e
mov edx, 1
imul eax, edx, 9
mov byte [ebp + eax - 0xc8], 0x6c
mov ecx, 1
imul edx, ecx, 7
mov byte [ebp + edx - 0xc8], 0x61
mov eax, 1
shl eax, 4
mov dword [ebp - 0x53c], eax
cmp dword [ebp - 0x53c], 0x11
jae 0x4180dd
jmp 0x4180e2
call fcn.00573527
mov ecx, dword [ebp - 0x53c]
mov byte [ebp + ecx - 0xc8], 0
mov edx, 1
imul eax, edx, 0
mov byte [ebp + eax - 0xc8], 0x5c
mov ecx, 1
shl ecx, 2
mov byte [ebp + ecx - 0xc8], 0x6e
mov edx, 1
shl edx, 3
mov byte [ebp + edx - 0xc8], 0x6c
mov eax, 1
imul ecx, eax, 0xb
mov byte [ebp + ecx - 0xc8], 0x72
mov edx, 1
imul eax, edx, 5
mov byte [ebp + eax - 0xc8], 0x73
mov ecx, 1
imul edx, ecx, 6
mov byte [ebp + edx - 0xc8], 0x74
mov eax, 1
imul ecx, eax, 0xd
mov byte [ebp + ecx - 0xc8], 0x65
xor edx, edx
mov dword [ebp - 0x3fc], edx
lea eax, [ebp - 0xc8]
push eax
lea ecx, [ebp - 0x410]
push ecx
lea edx, [ebp - 0x3fc]
push edx
call fcn.00432340
add esp, 0xc
mov byte [ebp - 4], 0x20
mov eax, 1
shl eax, 1
mov dword [ebp - 0x4c4], eax
cmp dword [ebp - 0x4c4], 3
jae 0x4181a1
jmp 0x4181a6
call fcn.00573527
mov ecx, dword [ebp - 0x4c4]
mov byte [ebp + ecx - 0x3e0], 0
mov edx, 1
shl edx, 0
mov byte [ebp + edx - 0x3e0], 0x53
mov eax, 1
imul ecx, eax, 0
mov byte [ebp + ecx - 0x3e0], 0x2f
mov edx, dword [ebp - 0x3fc]
mov dword [ebp - 0x638], edx
lea eax, [ebp - 0x3e0]
push eax
mov ecx, dword [ebp - 0x638]
push ecx
mov ecx, dword [ebp - 0x450]
call fcn.004142a0
mov edx, dword [ebp - 0x3fc]
mov dword [ebp - 0x63c], edx
mov eax, dword [ebp - 0x63c]
push eax
call fcn.0040ad10
add esp, 4
mov byte [ebp - 4], 0x1f
mov ecx, dword [ebp - 0x3fc]
sub ecx, 0x10
mov dword [ebp - 0x640], ecx
mov ecx, dword [ebp - 0x640]
call fcn.0042cb50
mov byte [ebp - 4], 0x18
mov edx, dword [ebp - 0x410]
sub edx, 0x10
mov dword [ebp - 0x644], edx
mov ecx, dword [ebp - 0x644]
call fcn.0042cb50
mov byte [ebp - 4], 0x16
mov eax, dword [ebp - 0x3a0]
sub eax, 0x10
mov dword [ebp - 0x648], eax
mov ecx, dword [ebp - 0x648]
call fcn.0042cb50
mov byte [ebp - 4], 0x12
mov ecx, dword [ebp - 0x400]
sub ecx, 0x10
mov dword [ebp - 0x64c], ecx
mov ecx, dword [ebp - 0x64c]
call fcn.0042cb50
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x444]
call fcn.0042c1f0
mov edx, 1
imul eax, edx, 0x4f
mov byte [ebp + eax - 0x15c], 0x72
mov ecx, 1
imul edx, ecx, 0x26
mov byte [ebp + edx - 0x15c], 0x73
mov eax, 1
imul ecx, eax, 0x19
mov byte [ebp + ecx - 0x15c], 0x73
mov edx, 1
imul eax, edx, 0x27
mov byte [ebp + eax - 0x15c], 0x26
mov ecx, 1
imul edx, ecx, 0x68
mov byte [ebp + edx - 0x15c], 0x73
mov eax, 1
imul ecx, eax, 0x7d
mov byte [ebp + ecx - 0x15c], 0x73
mov edx, 1
imul eax, edx, 0xc
mov byte [ebp + eax - 0x15c], 0x3d
mov ecx, 1
imul edx, ecx, 0x51
mov byte [ebp + edx - 0x15c], 0x69
mov eax, 1
imul ecx, eax, 0x7a
mov byte [ebp + ecx - 0x15c], 0x44
mov edx, 1
imul eax, edx, 0x2e
mov byte [ebp + eax - 0x15c], 0x56
mov ecx, 1
imul edx, ecx, 0x79
mov byte [ebp + edx - 0x15c], 0x49
mov eax, 1
imul ecx, eax, 0xd
mov byte [ebp + ecx - 0x15c], 0x25
mov edx, 1
imul eax, edx, 0x42
mov byte [ebp + eax - 0x15c], 0x3d
mov ecx, 1
imul edx, ecx, 0xf
mov byte [ebp + edx - 0x15c], 0x73
mov eax, 1
imul ecx, eax, 0x64
mov byte [ebp + ecx - 0x15c], 0x73
mov edx, 1
imul eax, edx, 0x5b
mov byte [ebp + eax - 0x15c], 0x70
mov ecx, 1
imul edx, ecx, 0x5d
mov byte [ebp + edx - 0x15c], 0x69
mov eax, 1
imul ecx, eax, 0x30
mov byte [ebp + ecx - 0x15c], 0x72
mov edx, 1
imul eax, edx, 0x75
mov byte [ebp + eax - 0x15c], 0x73
mov ecx, 1
imul edx, ecx, 0x23
mov byte [ebp + edx - 0x15c], 0x6e
mov eax, 1
imul ecx, eax, 0x7c
mov byte [ebp + ecx - 0x15c], 0x25
mov edx, 1
imul eax, edx, 0x1e
mov byte [ebp + eax - 0x15c], 0x65
mov ecx, 1
imul edx, ecx, 0x52
mov byte [ebp + edx - 0x15c], 0x6f
mov eax, 1
imul ecx, eax, 0x4c
mov byte [ebp + ecx - 0x15c], 0x78
mov edx, 1
imul eax, edx, 0x4e
mov byte [ebp + eax - 0x15c], 0x65
mov ecx, 1
imul edx, ecx, 0x22
mov byte [ebp + edx - 0x15c], 0x6f
mov eax, 1
imul ecx, eax, 0x33
mov byte [ebp + ecx - 0x15c], 0x6f
mov edx, 1
imul eax, edx, 0x3e
mov byte [ebp + eax - 0x15c], 0x73
mov ecx, 1
imul edx, ecx, 0x44
mov byte [ebp + edx - 0x15c], 0x73
mov eax, 1
imul ecx, eax, 0x38
mov byte [ebp + ecx - 0x15c], 0x26
mov edx, 1
imul eax, edx, 0x56
mov byte [ebp + eax - 0x15c], 0x73
mov ecx, 1
imul edx, ecx, 0x74
mov byte [ebp + edx - 0x15c], 0x26
mov eax, 1
imul ecx, eax, 0x4a
mov byte [ebp + ecx - 0x15c], 0x66
mov edx, 1
imul eax, edx, 0x65
mov byte [ebp + eax - 0x15c], 0x26
mov ecx, 1
imul edx, ecx, 0x73
mov byte [ebp + edx - 0x15c], 0x73
mov eax, 1
imul ecx, eax, 0x11
mov byte [ebp + ecx - 0x15c], 0x75
mov edx, 1
imul eax, edx, 0x16
mov byte [ebp + eax - 0x15c], 0x44
mov ecx, 1
imul edx, ecx, 0x13
mov byte [ebp + edx - 0x15c], 0x65
mov eax, 1
imul ecx, eax, 0x76
mov byte [ebp + ecx - 0x15c], 0x65
mov edx, 1
imul eax, edx, 0x2d
mov byte [ebp + eax - 0x15c], 0x65
mov ecx, 1
imul edx, ecx, 0x31
mov byte [ebp + edx - 0x15c], 0x73
mov eax, 1
imul ecx, eax, 0x48
mov byte [ebp + ecx - 0x15c], 0x72
mov edx, 1
imul eax, edx, 0x2f
mov byte [ebp + eax - 0x15c], 0x65
mov ecx, 1
imul edx, ecx, 0x25
mov byte [ebp + edx - 0x15c], 0x25
mov eax, 1
imul ecx, eax, 0x41
mov byte [ebp + ecx - 0x15c], 0x6e
mov edx, 1
imul eax, edx, 0x35
mov byte [ebp + eax - 0x15c], 0x3d
mov ecx, 1
imul edx, ecx, 0x12
mov byte [ebp + edx - 0x15c], 0x73
mov eax, 1
imul ecx, eax, 0x5a
mov byte [ebp + ecx - 0x15c], 0x6d
mov edx, 1
imul eax, edx, 0x6b
mov byte [ebp + eax - 0x15c], 0x65
mov ecx, 1
shl ecx, 4
mov byte [ebp + ecx - 0x15c], 0x26
mov edx, 1
imul eax, edx, 0x47
mov byte [ebp + eax - 0x15c], 0x69
mov ecx, 1
imul edx, ecx, 0x4d
mov byte [ebp + edx - 0x15c], 0x56
mov eax, 1
imul ecx, eax, 0xe
mov byte [ebp + ecx - 0x15c], 0x25
mov edx, 1
imul eax, edx, 0x2a
mov byte [ebp + eax - 0x15c], 0x72
mov ecx, 1
imul edx, ecx, 0x5e
mov byte [ebp + edx - 0x15c], 0x67
mov eax, 1
imul ecx, eax, 0x63
mov byte [ebp + ecx - 0x15c], 0x25
mov edx, 1
imul eax, edx, 0x49
mov byte [ebp + eax - 0x15c], 0x65
mov ecx, 1
shl ecx, 5
mov byte [ebp + ecx - 0x15c], 0x73
mov edx, 1
imul eax, edx, 0x24
mov byte [ebp + eax - 0x15c], 0x3d
mov ecx, 1
imul edx, ecx, 0x3b
mov byte [ebp + edx - 0x15c], 0x56
mov eax, 1
shl eax, 6
mov byte [ebp + eax - 0x15c], 0x6f
mov ecx, 1
shl ecx, 2
mov byte [ebp + ecx - 0x15c], 0x61
mov edx, 1
shl edx, 0
mov byte [ebp + edx - 0x15c], 0x6e
mov eax, 1
imul ecx, eax, 0x6d
mov byte [ebp + ecx - 0x15c], 0x73
mov edx, 1
imul eax, edx, 0x1d
mov byte [ebp + eax - 0x15c], 0x56
mov ecx, 1
imul edx, ecx, 0x29
mov byte [ebp + edx - 0x15c], 0x68
mov eax, 1
imul ecx, eax, 0x1f
mov byte [ebp + ecx - 0x15c], 0x72
mov edx, 1
imul eax, edx, 0x18
mov byte [ebp + eax - 0x15c], 0x25
mov ecx, 1
imul edx, ecx, 0x7b
mov byte [ebp + edx - 0x15c], 0x3d
mov eax, 1
imul ecx, eax, 0x77
mov byte [ebp + ecx - 0x15c], 0x73
mov edx, 1
imul eax, edx, 0x2c
mov byte [ebp + eax - 0x15c], 0x6d
mov ecx, 1
imul edx, ecx, 0x3d
mov byte [ebp + edx - 0x15c], 0x72
mov eax, 1
imul ecx, eax, 0xb
mov byte [ebp + ecx - 0x15c], 0x65
mov edx, 1
imul eax, edx, 0x72
mov byte [ebp + eax - 0x15c], 0x25
mov ecx, 1
imul edx, ecx, 0x3c
mov byte [ebp + edx - 0x15c], 0x65
mov eax, 1
imul ecx, eax, 0x69
mov byte [ebp + ecx - 0x15c], 0x74
mov edx, 1
imul eax, edx, 0x53
mov byte [ebp + eax - 0x15c], 0x6e
mov ecx, 1
imul edx, ecx, 0x3a
mov byte [ebp + edx - 0x15c], 0x65
mov eax, 1
imul ecx, eax, 0x54
mov byte [ebp + ecx - 0x15c], 0x3d
mov edx, 1
imul eax, edx, 0x66
mov byte [ebp + eax - 0x15c], 0x69
mov ecx, 1
imul edx, ecx, 0x78
mov byte [ebp + edx - 0x15c], 0x73
mov eax, 1
imul ecx, eax, 0x55
mov byte [ebp + ecx - 0x15c], 0x25
mov edx, 1
imul eax, edx, 9
mov byte [ebp + eax - 0x15c], 0x61
mov ecx, 1
imul edx, ecx, 0x5c
mov byte [ebp + edx - 0x15c], 0x61
mov eax, 1
imul ecx, eax, 0x34
mov byte [ebp + ecx - 0x15c], 0x6e
mov edx, 1
imul eax, edx, 0x14
mov byte [ebp + eax - 0x15c], 0x72
mov ecx, 1
imul edx, ecx, 0x46
mov byte [ebp + edx - 0x15c], 0x66
mov eax, 1
imul ecx, eax, 0x67
mov byte [ebp + ecx - 0x15c], 0x6e
mov edx, 1
imul eax, edx, 0x6f
mov byte [ebp + eax - 0x15c], 0x6f
mov ecx, 1
imul edx, ecx, 0x37
mov byte [ebp + edx - 0x15c], 0x73
mov eax, 1
imul ecx, eax, 0x3f
mov byte [ebp + ecx - 0x15c], 0x69
mov edx, 1
imul eax, edx, 0x61
mov byte [ebp + eax - 0x15c], 0x44
mov ecx, 1
imul edx, ecx, 0x28
mov byte [ebp + edx - 0x15c], 0x63
mov eax, 1
imul ecx, eax, 0x7e
mov dword [ebp - 0x4c8], ecx
cmp dword [ebp - 0x4c8], 0x7f
jae 0x418884
jmp 0x418889
call fcn.00573527
mov edx, dword [ebp - 0x4c8]
mov byte [ebp + edx - 0x15c], 0
mov eax, 1
shl eax, 1
mov byte [ebp + eax - 0x15c], 0x73
mov ecx, 1
imul edx, ecx, 0x6a
mov byte [ebp + edx - 0x15c], 0x56
mov eax, 1
imul ecx, eax, 0x70
mov byte [ebp + ecx - 0x15c], 0x6e
mov edx, 1
imul eax, edx, 0x39
mov byte [ebp + eax - 0x15c], 0x69
mov ecx, 1
imul edx, ecx, 5
mov byte [ebp + edx - 0x15c], 0x6c
mov eax, 1
imul ecx, eax, 0xa
mov byte [ebp + ecx - 0x15c], 0x74
mov edx, 1
imul eax, edx, 0x4b
mov byte [ebp + eax - 0x15c], 0x6f
mov ecx, 1
imul edx, ecx, 0
mov byte [ebp + edx - 0x15c], 0x69
mov eax, 1
imul ecx, eax, 0x45
mov byte [ebp + ecx - 0x15c], 0x26
mov edx, 1
imul eax, edx, 0x50
mov byte [ebp + eax - 0x15c], 0x73
mov ecx, 1
imul edx, ecx, 0x5f
mov byte [ebp + edx - 0x15c], 0x6e
mov eax, 1
imul ecx, eax, 6
mov byte [ebp + ecx - 0x15c], 0x6c
mov edx, 1
imul eax, edx, 0x62
mov byte [ebp + eax - 0x15c], 0x3d
mov ecx, 1
shl ecx, 3
mov byte [ebp + ecx - 0x15c], 0x74
mov edx, 1
imul eax, edx, 0x58
mov byte [ebp + eax - 0x15c], 0x63
mov ecx, 1
imul edx, ecx, 7
mov byte [ebp + edx - 0x15c], 0x53
mov eax, 1
imul ecx, eax, 0x60
mov byte [ebp + ecx - 0x15c], 0x49
mov edx, 1
imul eax, edx, 0x21
mov byte [ebp + eax - 0x15c], 0x69
mov ecx, 1
imul edx, ecx, 0x71
mov byte [ebp + edx - 0x15c], 0x3d
mov eax, 1
imul ecx, eax, 0x1b
mov byte [ebp + ecx - 0x15c], 0x6f
mov edx, 1
imul eax, edx, 0x57
mov byte [ebp + eax - 0x15c], 0x26
mov ecx, 1
imul edx, ecx, 0x1a
mov byte [ebp + edx - 0x15c], 0x26
mov eax, 1
imul ecx, eax, 0x2b
mov byte [ebp + ecx - 0x15c], 0x6f
mov edx, 1
imul eax, edx, 0x15
mov byte [ebp + eax - 0x15c], 0x49
mov ecx, 1
imul edx, ecx, 0x17
mov byte [ebp + edx - 0x15c], 0x3d
mov eax, 1
imul ecx, eax, 0x6c
mov byte [ebp + ecx - 0x15c], 0x72
mov edx, 1
imul eax, edx, 0x32
mov byte [ebp + eax - 0x15c], 0x69
mov ecx, 1
imul edx, ecx, 0x1c
mov byte [ebp + edx - 0x15c], 0x73
mov eax, 1
imul ecx, eax, 0x6e
mov byte [ebp + ecx - 0x15c], 0x69
mov edx, 1
imul eax, edx, 0x43
mov byte [ebp + eax - 0x15c], 0x25
mov ecx, 1
imul edx, ecx, 0x59
mov byte [ebp + edx - 0x15c], 0x61
mov eax, 1
imul ecx, eax, 0x36
mov byte [ebp + ecx - 0x15c], 0x25
mov edx, 1
imul eax, edx, 3
mov byte [ebp + eax - 0x15c], 0x74
xor ecx, ecx
mov dword [ebp - 0x3d0], ecx
call fcn.0043c0af
push eax
lea ecx, [ebp - 0x3d0]
call fcn.0042ce10
mov byte [ebp - 4], 0x21
mov edx, dword [ebp - 0x3b8]
push edx
mov eax, dword [0x60e544]
push eax
mov ecx, dword [ebp - 0x3b4]
push ecx
mov edx, dword [ebp - 0x40c]
push edx
mov eax, dword [ebp - 0x414]
push eax
mov ecx, dword [ebp - 0x3d8]
push ecx
mov edx, dword [ebp - 0x3dc]
push edx
mov eax, dword [ebp - 0x39c]
push eax
lea ecx, [ebp - 0x15c]
push ecx
lea edx, [ebp - 0x3d0]
push edx
call fcn.004307b0
add esp, 0x28
mov eax, 1
imul ecx, eax, 5
mov dword [ebp - 0x4cc], ecx
cmp dword [ebp - 0x4cc], 6
jae 0x418b29
jmp 0x418b2e
call fcn.00573527
mov edx, dword [ebp - 0x4cc]
mov byte [ebp + edx - 0x38], 0
mov eax, 1
shl eax, 0
mov byte [ebp + eax - 0x38], 0x74
mov ecx, 1
imul edx, ecx, 3
mov byte [ebp + edx - 0x38], 0x72
mov eax, 1
shl eax, 1
mov byte [ebp + eax - 0x38], 0x61
mov ecx, 1
imul edx, ecx, 0
mov byte [ebp + edx - 0x38], 0x53
mov eax, 1
shl eax, 2
mov byte [ebp + eax - 0x38], 0x74
xor ecx, ecx
mov dword [ebp - 0x3bc], ecx
call fcn.0043c0af
push eax
lea ecx, [ebp - 0x3bc]
call fcn.0042ce10
mov byte [ebp - 4], 0x22
mov edx, dword [ebp - 0x3d0]
mov dword [ebp - 0x650], edx
lea eax, [ebp - 0x38]
push eax
mov ecx, dword [ebp - 0x650]
push ecx
lea edx, [ebp - 0x3bc]
push edx
call fcn.004307b0
add esp, 0xc
xor eax, eax
mov dword [ebp - 0x3c4], eax
call fcn.0043c0af
push eax
lea ecx, [ebp - 0x3c4]
call fcn.0042ce10
mov byte [ebp - 4], 0x23
xor ecx, ecx
mov dword [ebp - 0x3c0], ecx
call fcn.0043c0af
push eax
lea ecx, [ebp - 0x3c0]
call fcn.0042ce10
mov byte [ebp - 4], 0x24
mov edx, 1
imul eax, edx, 0xd
mov byte [ebp + eax - 0x78], 0x77
mov ecx, 1
imul edx, ecx, 0x16
mov dword [ebp - 0x55c], edx
cmp dword [ebp - 0x55c], 0x17
jae 0x418c1c
jmp 0x418c21
call fcn.00573527
mov eax, dword [ebp - 0x55c]
mov byte [ebp + eax - 0x78], 0
mov ecx, 1
imul edx, ecx, 0xb
mov byte [ebp + edx - 0x78], 0x64
mov eax, 1
imul ecx, eax, 6
mov byte [ebp + ecx - 0x78], 0x2f
mov edx, 1
imul eax, edx, 0x13
mov byte [ebp + eax - 0x78], 0x3f
mov ecx, 1
imul edx, ecx, 3
mov byte [ebp + edx - 0x78], 0x70
mov eax, 1
imul ecx, eax, 0x14
mov byte [ebp + ecx - 0x78], 0x25
mov edx, 1
shl edx, 2
mov byte [ebp + edx - 0x78], 0x3a
mov eax, 1
imul ecx, eax, 0x12
mov byte [ebp + ecx - 0x78], 0x2f
mov edx, 1
shl edx, 0
mov byte [ebp + edx - 0x78], 0x74
mov eax, 1
shl eax, 4
mov byte [ebp + eax - 0x78], 0x6f
mov ecx, 1
imul edx, ecx, 0xa
mov byte [ebp + edx - 0x78], 0x61
mov eax, 1
imul ecx, eax, 0xf
mov byte [ebp + ecx - 0x78], 0x63
mov edx, 1
imul eax, edx, 7
mov byte [ebp + eax - 0x78], 0x77
mov ecx, 1
imul edx, ecx, 0xe
mov byte [ebp + edx - 0x78], 0x2e
mov eax, 1
imul ecx, eax, 5
mov byte [ebp + ecx - 0x78], 0x2f
mov edx, 1
imul eax, edx, 9
mov byte [ebp + eax - 0x78], 0x77
mov ecx, 1
shl ecx, 1
mov byte [ebp + ecx - 0x78], 0x74
mov edx, 1
imul eax, edx, 0xc
mov byte [ebp + eax - 0x78], 0x6f
mov ecx, 1
imul edx, ecx, 0x11
mov byte [ebp + edx - 0x78], 0x6d
mov eax, 1
imul ecx, eax, 0x15
mov byte [ebp + ecx - 0x78], 0x73
mov edx, 1
shl edx, 3
mov byte [ebp + edx - 0x78], 0x75
mov eax, 1
imul ecx, eax, 0
mov byte [ebp + ecx - 0x78], 0x68
mov edx, 1
imul eax, edx, 0x16
mov byte [ebp + eax - 0x94], 0x25
mov ecx, 1
imul edx, ecx, 6
mov byte [ebp + edx - 0x94], 0x2f
mov eax, 1
imul ecx, eax, 0
mov byte [ebp + ecx - 0x94], 0x68
mov edx, 1
imul eax, edx, 0xa
mov byte [ebp + eax - 0x94], 0x73
mov ecx, 1
imul edx, ecx, 0xd
mov byte [ebp + edx - 0x94], 0x70
mov eax, 1
imul ecx, eax, 0xe
mov byte [ebp + ecx - 0x94], 0x68
mov edx, 1
shl edx, 4
mov byte [ebp + edx - 0x94], 0x3f
mov eax, 1
imul ecx, eax, 0xf
mov byte [ebp + ecx - 0x94], 0x70
mov edx, 1
imul eax, edx, 0x15
mov byte [ebp + eax - 0x94], 0x3d
mov ecx, 1
shl ecx, 2
mov byte [ebp + ecx - 0x94], 0x3a
mov edx, 1
imul eax, edx, 0x17
mov byte [ebp + eax - 0x94], 0x73
mov ecx, 1
imul edx, ecx, 0x13
mov byte [ebp + edx - 0x94], 0x73
mov eax, 1
imul ecx, eax, 0xb
mov byte [ebp + ecx - 0x94], 0x6f
mov edx, 1
imul eax, edx, 7
mov byte [ebp + eax - 0x94], 0x25
mov ecx, 1
imul edx, ecx, 3
mov byte [ebp + edx - 0x94], 0x70
mov eax, 1
imul ecx, eax, 9
mov byte [ebp + ecx - 0x94], 0x2f
mov edx, 1
imul eax, edx, 5
mov byte [ebp + eax - 0x94], 0x2f
mov ecx, 1
shl ecx, 1
mov byte [ebp + ecx - 0x94], 0x74
mov edx, 1
imul eax, edx, 0x12
mov byte [ebp + eax - 0x94], 0x65
mov ecx, 1
imul edx, ecx, 0x18
mov dword [ebp - 0x4d0], edx
cmp dword [ebp - 0x4d0], 0x19
jae 0x418e84
jmp 0x418e89
call fcn.00573527
mov eax, dword [ebp - 0x4d0]
mov byte [ebp + eax - 0x94], 0
mov ecx, 1
imul edx, ecx, 0x11
mov byte [ebp + edx - 0x94], 0x74
mov eax, 1
shl eax, 3
mov byte [ebp + eax - 0x94], 0x73
mov ecx, 1
shl ecx, 0
mov byte [ebp + ecx - 0x94], 0x74
mov edx, 1
imul eax, edx, 0x14
mov byte [ebp + eax - 0x94], 0x74
mov ecx, 1
imul edx, ecx, 0xc
mov byte [ebp + edx - 0x94], 0x2e
xor eax, eax
mov dword [ebp - 0x3a8], eax
push ecx
mov ecx, esp
mov dword [ebp - 0x7f0], esp
mov dword [ebp - 0x65c], ecx
mov edx, dword [ebp - 0x3bc]
sub edx, 0x10
mov dword [ebp - 0x654], edx
mov eax, dword [ebp - 0x654]
push eax
call fcn.004308b0
add esp, 4
mov dword [ebp - 0x658], eax
mov ecx, dword [ebp - 0x658]
add ecx, 0x10
mov edx, dword [ebp - 0x65c]
mov dword [edx], ecx
lea eax, [ebp - 0x3a8]
push eax
mov ecx, dword [ebp - 0x450]
add ecx, 1
call fcn.00599b30
mov dword [ebp - 0x7f4], eax
mov byte [ebp - 4], 0x25
mov ecx, dword [ebp - 0x3a8]
push ecx
lea edx, [ebp - 0x78]
push edx
lea eax, [ebp - 0x3c4]
push eax
call fcn.004307b0
add esp, 0xc
lea ecx, [ebp - 0x668]
push ecx
call fcn.00430210
add esp, 4
mov dword [ebp - 0x660], eax
mov edx, dword [ebp - 0x660]
mov dword [ebp - 0x664], edx
mov byte [ebp - 4], 0x26
mov eax, dword [ebp - 0x3a8]
push eax
mov ecx, dword [ebp - 0x664]
mov edx, dword [ecx]
push edx
lea eax, [ebp - 0x94]
push eax
lea ecx, [ebp - 0x3c0]
push ecx
call fcn.004307b0
add esp, 0x10
mov byte [ebp - 4], 0x25
mov edx, dword [ebp - 0x668]
sub edx, 0x10
mov dword [ebp - 0x66c], edx
mov ecx, dword [ebp - 0x66c]
call fcn.0042cb50
mov eax, 1
shl eax, 2
mov dword [ebp - 0x4d4], eax
cmp dword [ebp - 0x4d4], 5
jae 0x418fee
jmp 0x418ff3
call fcn.00573527
mov ecx, dword [ebp - 0x4d4]
mov byte [ebp + ecx - 0x18], 0
mov edx, 1
shl edx, 0
mov byte [ebp + edx - 0x18], 0x4f
mov eax, 1
imul ecx, eax, 3
mov byte [ebp + ecx - 0x18], 0x45
mov edx, 1
shl edx, 1
mov byte [ebp + edx - 0x18], 0x4e
mov eax, 1
imul ecx, eax, 0
mov byte [ebp + ecx - 0x18], 0x44
mov edx, dword [ebp - 0x3c4]
mov dword [ebp - 0x670], edx
lea eax, [ebp - 0x18]
push eax
mov ecx, dword [ebp - 0x670]
push ecx
mov ecx, dword [ebp - 0x450]
call fcn.00596d70
mov byte [ebp - 0x48d], al
mov edx, dword [ebp - 0x3c0]
mov dword [ebp - 0x674], edx
mov eax, dword [ebp - 0x674]
push eax
mov ecx, dword [ebp - 0x450]
call fcn.00402ef0
mov dword [ebp - 0x424], 0
mov dword [ebp - 0x42c], 0
mov cl, byte [ebp - 0x449]
mov byte [ebp - 0x452], cl
movzx edx, byte [ebp - 0x452]
test edx, edx
je 0x4190c6
mov ecx, dword [ebp - 0x450]
add ecx, 1
call fcn.0059a220
mov dword [ebp - 0x678], eax
cmp dword [ebp - 0x678], 0x63
jne 0x4190c6
mov byte [ebp - 0x452], 0
xor eax, eax
mov dword [ebp - 0x408], eax
call fcn.0043c0af
push eax
lea ecx, [ebp - 0x408]
call fcn.0042ce10
mov byte [ebp - 4], 0x27
movzx ecx, byte [ebp - 0x449]
test ecx, ecx
jne 0x419106
movzx edx, byte [ebp - 0x451]
test edx, edx
jne 0x419106
mov eax, 1
test eax, eax
je 0x41937d
mov ecx, 1
shl ecx, 1
mov byte [ebp + ecx - 0x28], 0x78
mov edx, 1
shl edx, 0
mov byte [ebp + edx - 0x28], 0x65
mov eax, 1
imul ecx, eax, 0
mov byte [ebp + ecx - 0x28], 0x2e
mov edx, 1
shl edx, 2
mov dword [ebp - 0x4d8], edx
cmp dword [ebp - 0x4d8], 5
jae 0x419145
jmp 0x41914a
call fcn.00573527
mov eax, dword [ebp - 0x4d8]
mov byte [ebp + eax - 0x28], 0
mov ecx, 1
imul edx, ecx, 3
mov byte [ebp + edx - 0x28], 0x65
xor eax, eax
mov dword [ebp - 0x3a4], eax
lea ecx, [ebp - 0x28]
push ecx
lea edx, [ebp - 0x3c8]
push edx
lea eax, [ebp - 0x3a4]
push eax
call fcn.00432340
add esp, 0xc
mov byte [ebp - 4], 0x28
movzx ecx, byte [ebp - 0x459]
test ecx, ecx
je 0x4191c5
lea ecx, [ebp - 0x3a4]
call fcn.0042ccb0
push eax
lea edx, [ebp - 0x294]
push edx
push 0x85
mov ecx, dword [ebp - 0x450]
call fcn.00404bb0
push 0xffffffffffffffff
lea ecx, [ebp - 0x3a4]
call fcn.0042cdb0
jmp 0x4191f5
lea ecx, [ebp - 0x3a4]
call fcn.0042ccb0
push eax
lea eax, [ebp - 0x294]
push eax
push 0x84
mov ecx, dword [ebp - 0x450]
call fcn.00404bb0
push 0xffffffffffffffff
lea ecx, [ebp - 0x3a4]
call fcn.0042cdb0
mov ecx, 1
imul edx, ecx, 5
mov dword [ebp - 0x4fc], edx
cmp dword [ebp - 0x4fc], 6
jae 0x41920e
jmp 0x419213
call fcn.00573527
mov eax, dword [ebp - 0x4fc]
mov byte [ebp + eax - 0x40], 0
mov ecx, 1
shl ecx, 0
mov byte [ebp + ecx - 0x40], 0x73
mov edx, 1
imul eax, edx, 3
mov byte [ebp + eax - 0x40], 0x25
mov ecx, 1
shl ecx, 2
mov byte [ebp + ecx - 0x40], 0x73
mov edx, 1
imul eax, edx, 0
mov byte [ebp + eax - 0x40], 0x25
mov ecx, 1
shl ecx, 1
mov byte [ebp + ecx - 0x40], 0x5c
mov edx, dword [ebp - 0x3a4]
push edx
lea eax, [ebp - 0x294]
push eax
lea ecx, [ebp - 0x40]
push ecx
lea edx, [ebp - 0x408]
push edx
call fcn.004307b0
add esp, 0x10
push ecx
mov eax, esp
mov dword [ebp - 0x7fc], esp
mov dword [ebp - 0x684], eax
mov ecx, dword [ebp - 0x408]
sub ecx, 0x10
mov dword [ebp - 0x67c], ecx
mov edx, dword [ebp - 0x67c]
push edx
call fcn.004308b0
add esp, 4
mov dword [ebp - 0x680], eax
mov eax, dword [ebp - 0x680]
add eax, 0x10
mov ecx, dword [ebp - 0x684]
mov dword [ecx], eax
mov byte [ebp - 4], 0x29
push ecx
mov edx, esp
mov dword [ebp - 0x800], esp
mov dword [ebp - 0x690], edx
mov eax, dword [ebp - 0x3c8]
sub eax, 0x10
mov dword [ebp - 0x688], eax
mov ecx, dword [ebp - 0x688]
push ecx
call fcn.004308b0
add esp, 4
mov dword [ebp - 0x68c], eax
mov edx, dword [ebp - 0x68c]
add edx, 0x10
mov eax, dword [ebp - 0x690]
mov dword [eax], edx
mov byte [ebp - 4], 0x2a
push ecx
mov ecx, esp
mov dword [ebp - 0x804], esp
mov dword [ebp - 0x69c], ecx
mov edx, dword [ebp - 0x3c8]
sub edx, 0x10
mov dword [ebp - 0x694], edx
mov eax, dword [ebp - 0x694]
push eax
call fcn.004308b0
add esp, 4
mov dword [ebp - 0x698], eax
mov ecx, dword [ebp - 0x698]
add ecx, 0x10
mov edx, dword [ebp - 0x69c]
mov dword [edx], ecx
mov byte [ebp - 4], 0x28
call fcn.0041db90
add esp, 0xc
mov byte [ebp - 4], 0x27
mov eax, dword [ebp - 0x3a4]
sub eax, 0x10
mov dword [ebp - 0x6a0], eax
mov ecx, dword [ebp - 0x6a0]
call fcn.0042cb50
push ecx
mov ecx, esp
mov dword [ebp - 0x808], esp
push ecx
call fcn.00414760
add esp, 4
mov dword [ebp - 0x758], eax
mov byte [ebp - 4], 0x2b
push ecx
mov edx, esp
mov dword [ebp - 0x75c], esp
push edx
call fcn.00430210
add esp, 4
mov dword [ebp - 0x760], eax
mov byte [ebp - 4], 0x2c
push ecx
mov ecx, esp
mov dword [ebp - 0x764], esp
push 0x5ecfdc
call fcn.0042d800
mov dword [ebp - 0x768], eax
mov byte [ebp - 4], 0x2d
mov eax, dword [ebp - 0x450]
push eax
lea ecx, [ebp - 0x42c]
push ecx
lea edx, [ebp - 0x424]
push edx
push ecx
mov eax, esp
mov dword [ebp - 0x76c], esp
push eax
call fcn.00430210
add esp, 4
mov dword [ebp - 0x7f8], eax
mov byte [ebp - 4], 0x2e
push ecx
mov ecx, esp
mov dword [ebp - 0x774], esp
push 0x5ecfdc
call fcn.0042d800
mov dword [ebp - 0x778], eax
mov byte [ebp - 4], 0x2f
push ecx
mov ecx, esp
mov dword [ebp - 0x77c], esp
mov dword [ebp - 0x6b4], ecx
mov edx, dword [ebp - 0x3b8]
sub edx, 0x10
mov dword [ebp - 0x6ac], edx
mov eax, dword [ebp - 0x6ac]
push eax
call fcn.004308b0
add esp, 4
mov dword [ebp - 0x6b0], eax
mov ecx, dword [ebp - 0x6b0]
add ecx, 0x10
mov edx, dword [ebp - 0x6b4]
mov dword [edx], ecx
mov byte [ebp - 4], 0x30
push ecx
mov ecx, esp
mov dword [ebp - 0x780], esp
mov eax, dword [0x60e544]
push eax
call fcn.0042d800
mov dword [ebp - 0x784], eax
mov byte [ebp - 4], 0x31
push ecx
mov ecx, esp
mov dword [ebp - 0x788], esp
mov dword [ebp - 0x6c0], ecx
mov edx, dword [ebp - 0x3dc]
sub edx, 0x10
mov dword [ebp - 0x6b8], edx
mov eax, dword [ebp - 0x6b8]
push eax
call fcn.004308b0
add esp, 4
mov dword [ebp - 0x6bc], eax
mov ecx, dword [ebp - 0x6bc]
add ecx, 0x10
mov edx, dword [ebp - 0x6c0]
mov dword [edx], ecx
mov byte [ebp - 4], 0x32
push ecx
mov eax, esp
mov dword [ebp - 0x78c], esp
mov dword [ebp - 0x6cc], eax
mov ecx, dword [ebp - 0x39c]
sub ecx, 0x10
mov dword [ebp - 0x6c4], ecx
mov edx, dword [ebp - 0x6c4]
push edx
call fcn.004308b0
add esp, 4
mov dword [ebp - 0x6c8], eax
mov eax, dword [ebp - 0x6c8]
add eax, 0x10
mov ecx, dword [ebp - 0x6cc]
mov dword [ecx], eax
mov byte [ebp - 4], 0x33
push ecx
mov edx, esp
mov dword [ebp - 0x790], esp
mov dword [ebp - 0x6d8], edx
mov eax, dword [ebp - 0x3d4]
sub eax, 0x10
mov dword [ebp - 0x6d0], eax
mov ecx, dword [ebp - 0x6d0]
push ecx
call fcn.004308b0
add esp, 4
mov dword [ebp - 0x6fc], eax
mov edx, dword [ebp - 0x6fc]
push edx
mov ecx, dword [ebp - 0x6d8]
call fcn.0042d280
mov byte [ebp - 4], 0x34
push ecx
mov ecx, esp
mov dword [ebp - 0x794], esp
lea eax, [ebp - 0x3b4]
push eax
call fcn.00430980
movzx ecx, byte [ebp - 0x451]
push ecx
movzx edx, byte [ebp - 0x452]
push edx
movzx eax, byte [ebp - 0x449]
push eax
mov ecx, dword [ebp - 0x450]
add ecx, 1
mov byte [ebp - 4], 0x27
call fcn.0041d2a0
mov ecx, 1
imul edx, ecx, 7
mov byte [ebp + edx - 0xa4], 0x65
mov eax, 1
shl eax, 2
mov byte [ebp + eax - 0xa4], 0x77
mov ecx, 1
shl ecx, 3
mov byte [ebp + ecx - 0xa4], 0x5c
mov edx, 1
imul eax, edx, 0xc
mov dword [ebp - 0x4e0], eax
cmp dword [ebp - 0x4e0], 0xd
jae 0x4195e7
jmp 0x4195ec
call fcn.00573527
mov ecx, dword [ebp - 0x4e0]
mov byte [ebp + ecx - 0xa4], 0
mov edx, 1
shl edx, 1
mov byte [ebp + edx - 0xa4], 0x66
mov eax, 1
shl eax, 0
mov byte [ebp + eax - 0xa4], 0x6f
mov ecx, 1
imul edx, ecx, 6
mov byte [ebp + edx - 0xa4], 0x72
mov eax, 1
imul ecx, eax, 3
mov byte [ebp + ecx - 0xa4], 0x74
mov edx, 1
imul eax, edx, 0
mov byte [ebp + eax - 0xa4], 0x53
mov ecx, 1
imul edx, ecx, 0xb
mov byte [ebp + edx - 0xa4], 0x41
mov eax, 1
imul ecx, eax, 5
mov byte [ebp + ecx - 0xa4], 0x61
mov edx, 1
imul eax, edx, 9
mov byte [ebp + eax - 0xa4], 0x49
mov ecx, 1
imul edx, ecx, 0xa
mov byte [ebp + edx - 0xa4], 0x54
mov dword [ebp - 0x420], 2
mov eax, 1
shl eax, 0
mov byte [ebp + eax - 0x404], 0x73
mov ecx, 1
imul edx, ecx, 0
mov byte [ebp + edx - 0x404], 0x72
mov eax, 1
shl eax, 1
mov byte [ebp + eax - 0x404], 0x74
mov ecx, 1
imul edx, ecx, 3
mov dword [ebp - 0x4e4], edx
cmp dword [ebp - 0x4e4], 4
jae 0x4196db
jmp 0x4196e0
call fcn.00573527
mov eax, dword [ebp - 0x4e4]
mov byte [ebp + eax - 0x404], 0
push 4
lea ecx, [ebp - 0x420]
push ecx
push 4
lea edx, [ebp - 0x404]
push edx
lea eax, [ebp - 0xa4]
push eax
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.00421820
add esp, 0x18
mov ecx, 1
imul edx, ecx, 0
mov byte [ebp + edx - 0x30], 0x74
mov eax, 1
shl eax, 2
mov dword [ebp - 0x4e8], eax
cmp dword [ebp - 0x4e8], 5
jae 0x41973a
jmp 0x41973f
call fcn.00573527
mov ecx, dword [ebp - 0x4e8]
mov byte [ebp + ecx - 0x30], 0
mov edx, 1
shl edx, 0
mov byte [ebp + edx - 0x30], 0x72
mov eax, 1
shl eax, 1
mov byte [ebp + eax - 0x30], 0x75
mov ecx, 1
imul edx, ecx, 3
mov byte [ebp + edx - 0x30], 0x65
push ecx
mov ecx, esp
mov dword [ebp - 0x798], esp
lea eax, [ebp - 0x30]
push eax
call fcn.0042d800
mov dword [ebp - 0x79c], eax
mov byte [ebp - 4], 0x35
push ecx
mov ecx, esp
mov dword [ebp - 0x7a0], esp
lea edx, [ebp - 0x3b0]
push edx
call fcn.0042d800
mov dword [ebp - 0x7a4], eax
mov byte [ebp - 4], 0x36
push ecx
mov eax, esp
mov dword [ebp - 0x7a8], esp
push 0x5ed7cc
push eax
call fcn.00596460
add esp, 8
push SysReAllocString
mov byte [ebp - 4], 0x27
call fcn.00414680
add esp, 0x10
mov ecx, 1
imul edx, ecx, 0
mov byte [ebp + edx - 0x48], 0x46
mov eax, 1
imul ecx, eax, 3
mov byte [ebp + ecx - 0x48], 0x69
mov edx, 1
imul eax, edx, 5
mov byte [ebp + eax - 0x48], 0x68
mov ecx, 1
shl ecx, 2
mov byte [ebp + ecx - 0x48], 0x73
mov edx, 1
shl edx, 1
mov byte [ebp + edx - 0x48], 0x6e
mov eax, 1
shl eax, 0
mov byte [ebp + eax - 0x48], 0x69
mov ecx, 1
imul edx, ecx, 6
mov dword [ebp - 0x4ec], edx
cmp dword [ebp - 0x4ec], 7
jae 0x419839
jmp 0x41983e
call fcn.00573527
mov eax, dword [ebp - 0x4ec]
mov byte [ebp + eax - 0x48], 0
lea ecx, [ebp - 0x48]
push ecx
lea ecx, [ebp - 0x3d0]
call fcn.0042cbb0
push eax
lea edx, [ebp - 0x3bc]
push edx
call fcn.004307b0
add esp, 0xc
push ecx
mov ecx, esp
mov dword [ebp - 0x7ac], esp
lea eax, [ebp - 0x3bc]
push eax
call fcn.00430980
lea ecx, [ebp - 0x6e8]
push ecx
mov ecx, dword [ebp - 0x450]
add ecx, 1
call fcn.00599b30
mov dword [ebp - 0x6e0], eax
mov edx, dword [ebp - 0x6e0]
mov dword [ebp - 0x6e4], edx
mov byte [ebp - 4], 0x37
mov eax, dword [ebp - 0x6e4]
push eax
lea ecx, [ebp - 0x3a8]
call fcn.00430890
mov byte [ebp - 4], 0x27
lea ecx, [ebp - 0x6e8]
call fcn.0042cb90
mov ecx, dword [ebp - 0x3a8]
push ecx
lea edx, [ebp - 0x78]
push edx
lea eax, [ebp - 0x3c4]
push eax
call fcn.004307b0
add esp, 0xc
lea ecx, [ebp - 0x6f4]
push ecx
call fcn.00430210
add esp, 4
mov dword [ebp - 0x6ec], eax
mov edx, dword [ebp - 0x6ec]
mov dword [ebp - 0x6f0], edx
mov byte [ebp - 4], 0x38
mov eax, dword [ebp - 0x3a8]
push eax
mov ecx, dword [ebp - 0x6f0]
mov edx, dword [ecx]
push edx
lea eax, [ebp - 0x94]
push eax
lea ecx, [ebp - 0x3c0]
push ecx
call fcn.004307b0
add esp, 0x10
mov byte [ebp - 4], 0x27
lea ecx, [ebp - 0x6f4]
call fcn.0042cb90
lea edx, [ebp - 0x18]
push edx
lea ecx, [ebp - 0x3c4]
call fcn.0042cbb0
push eax
mov ecx, dword [ebp - 0x450]
call fcn.00596d70
mov byte [ebp - 0x4a9], al
lea ecx, [ebp - 0x3c0]
call fcn.0042cbb0
push eax
mov ecx, dword [ebp - 0x450]
call fcn.00402ef0
mov dword [ebp - 0x49c], 0
jmp 0x419990
mov eax, dword [ebp - 0x49c]
add eax, 1
mov dword [ebp - 0x49c], eax
cmp dword [ebp - 0x49c], 0xa
jge 0x4199a8
push 0x3e8
call fcn.0040a8b0
add esp, 4
jmp 0x419981
mov byte [ebp - 4], 0x25
lea ecx, [ebp - 0x408]
call fcn.0042cb90
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0x3a8]
call fcn.0042cb90
mov byte [ebp - 4], 0x23
lea ecx, [ebp - 0x3c0]
call fcn.0042cb90
mov byte [ebp - 4], 0x22
lea ecx, [ebp - 0x3c4]
call fcn.0042cb90
mov byte [ebp - 4], 0x21
lea ecx, [ebp - 0x3bc]
call fcn.0042cb90
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x3d0]
call fcn.0042cb90
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x3c8]
call fcn.0042cb90
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x3d4]
call fcn.0042cb90
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x3b4]
call fcn.0042cb90
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x40c]
call fcn.0042cb90
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x414]
call fcn.0042cb90
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x3d8]
call fcn.0042cb90
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x39c]
call fcn.0042cb90
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x3b8]
call fcn.0042cb90
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x3dc]
call fcn.0042cb90
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.005733f7
mov esp, ebp
pop ebp
ret