Function at 0x418280
Capabilities:
Contain obfuscated stackstrings
Parse pe header

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x50c
mov eax, dword [0x433004]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
lea eax, [ebp - 0x2c0]
mov dword [ebp - 0x508], ecx
push 0x20
mov dword [ebp - 0x2c0], 0
mov dword [ebp - 0x2bc], eax
call fcn.0041b352
mov esi, eax
add esp, 4
xor eax, eax
mov dword [esi + 0x14], 7
mov dword [esi + 0x10], 0
mov word [esi], ax
lea eax, [ebp + 8]
cmp esi, eax
je 0x4182e4
push 0xffffffffffffffff
push 0
push eax
mov ecx, esi
call fcn.00403b30
lea ecx, [esi + 0x18]
mov dword [ecx], 0
mov eax, dword [ebp - 0x2bc]
mov dword [esi + 0x1c], eax
mov eax, dword [ebp - 0x2bc]
mov dword [eax], esi
mov dword [ebp - 0x2bc], ecx
nop dword [eax]
nop dword [eax + eax]
mov esi, dword [ebp - 0x2c0]
mov dword [ebp - 0x2cc], esi
test esi, esi
je 0x419a28
xor eax, eax
mov dword [ebp - 8], 7
push 0xffffffffffffffff
push eax
push esi
lea ecx, [ebp - 0x1c]
mov dword [ebp - 0xc], 0
mov word [ebp - 0x1c], ax
call fcn.00403b30
sub esp, 0x18
xor eax, eax
mov ecx, esp
push 0xffffffffffffffff
mov dword [ecx + 0x14], 7
mov dword [ecx + 0x10], 0
push eax
mov word [ecx], ax
lea eax, [ebp - 0x1c]
push eax
call fcn.00403b30
lea ecx, [ebp - 0x34]
call fcn.00416d00
sub esp, 0x18
xor eax, eax
mov ecx, esp
push 0xffffffffffffffff
mov dword [ecx + 0x14], 7
mov dword [ecx + 0x10], 0
push eax
mov word [ecx], ax
lea eax, [ebp - 0x1c]
push eax
call fcn.00403b30
call fcn.00417e00
mov eax, dword [0x435ab4]
lea edi, [ebp - 0x34]
cmp dword [ebp - 0x20], 8
cmovae edi, dword [ebp - 0x34]
mov eax, dword [eax + 0xb8]
test eax, eax
jne 0x4183cd
push 0xe2b40f85
xor edx, edx
xor ecx, ecx
call fcn.004022b0
mov ecx, dword [0x435ab4]
mov dword [ecx + 0xb8], eax
lea ecx, [ebp - 0x2b8]
push ecx
push edi
call eax
mov ecx, dword [0x435ab4]
mov ebx, eax
mov eax, dword [ecx + 0x40]
test eax, eax
jne 0x4183fd
push 0x1fbbb84f
xor edx, edx
xor ecx, ecx
call fcn.004022b0
mov ecx, dword [0x435ab4]
mov dword [ecx + 0x40], eax
call eax
mov edi, eax
mov dword [ebp - 0x504], edi
cmp ebx, 0xffffffff
jne 0x419595
cmp dword [ebp - 8], 8
lea ebx, [ebp - 0x1c]
cmovae ebx, dword [ebp - 0x1c]
mov byte [ebp - 0x468], 0
mov byte [ebp - 0x467], 0x67
mov byte [ebp - 0x466], 0x52
mov byte [ebp - 0x465], 0x32
mov byte [ebp - 0x464], 0x52
mov byte [ebp - 0x463], 0x73
mov byte [ebp - 0x462], 0x52
mov byte [ebp - 0x461], 0x70
mov byte [ebp - 0x460], 0x52
mov byte [ebp - 0x45f], 0x67
mov byte [ebp - 0x45e], 0x52
mov byte [ebp - 0x45d], 0x32
mov byte [ebp - 0x45c], 0x52
mov byte [ebp - 0x45b], 0x28
mov byte [ebp - 0x45a], 0x52
mov byte [ebp - 0x459], 0x35
mov byte [ebp - 0x458], 0x52
mov byte [ebp - 0x457], 0x42
mov byte [ebp - 0x456], 0x52
mov byte [ebp - 0x455], 0x67
mov byte [ebp - 0x454], 0x52
mov byte [ebp - 0x453], 0x32
mov byte [ebp - 0x452], 0x52
mov byte [ebp - 0x451], 0x59
mov byte [ebp - 0x450], 0x52
mov byte [ebp - 0x44f], 0x7d
mov byte [ebp - 0x44e], 0x52
mov byte [ebp - 0x44d], 0x75
mov byte [ebp - 0x44c], 0x52
mov byte [ebp - 0x44b], 0xb
mov byte [ebp - 0x44a], 0x52
mov byte [ebp - 0x449], 0x49
mov byte [ebp - 0x448], 0x52
mov byte [ebp - 0x447], 0x32
mov byte [ebp - 0x446], 0x52
mov byte [ebp - 0x445], 0x59
mov byte [ebp - 0x444], 0x52
mov byte [ebp - 0x443], 0x35
mov byte [ebp - 0x442], 0x52
mov byte [ebp - 0x441], 0x75
mov byte [ebp - 0x440], 0x52
mov byte [ebp - 0x43f], 0x32
mov byte [ebp - 0x43e], 0x52
mov byte [ebp - 0x43d], 0x73
mov byte [ebp - 0x43c], 0x52
mov byte [ebp - 0x43b], 0x75
mov byte [ebp - 0x43a], 0x52
mov byte [ebp - 0x439], 0x70
mov byte [ebp - 0x438], 0x52
mov byte [ebp - 0x437], 0x32
mov byte [ebp - 0x436], 0x52
mov byte [ebp - 0x435], 0x28
mov byte [ebp - 0x434], 0x52
mov byte [ebp - 0x433], 0x7d
mov byte [ebp - 0x432], 0x52
mov byte [ebp - 0x431], 0x63
mov byte [ebp - 0x430], 0x52
mov byte [ebp - 0x42f], 0x42
mov byte [ebp - 0x42e], 0x52
mov byte [ebp - 0x42d], 1
mov byte [ebp - 0x42c], 0x52
mov byte [ebp - 0x42b], 0x28
mov byte [ebp - 0x42a], 0x52
mov byte [ebp - 0x429], 4
mov byte [ebp - 0x428], 0x52
mov byte [ebp - 0x427], 0x75
mov byte [ebp - 0x426], 0x52
mov byte [ebp - 0x425], 0x37
mov byte [ebp - 0x424], 0x52
mov byte [ebp - 0x423], 0x35
mov byte [ebp - 0x422], 0x52
mov byte [ebp - 0x421], 0x2d
mov byte [ebp - 0x420], 0x52
mov byte [ebp - 0x41f], 0x75
mov byte [ebp - 0x41e], 0x52
mov byte [ebp - 0x41d], 0x74
mov byte [ebp - 0x41c], 0x52
mov byte [ebp - 0x41b], 0x7d
mov byte [ebp - 0x41a], 0x52
mov byte [ebp - 0x419], 0x42
mov byte [ebp - 0x418], 0x52
mov byte [ebp - 0x417], 0x36
mov byte [ebp - 0x416], 0x52
mov byte [ebp - 0x415], 0x49
mov byte [ebp - 0x414], 0x52
mov byte [ebp - 0x413], 0x35
mov byte [ebp - 0x412], 0x52
mov byte [ebp - 0x411], 0x42
mov byte [ebp - 0x410], 0x52
mov byte [ebp - 0x40f], 0x5a
mov byte [ebp - 0x40e], 0x52
mov byte [ebp - 0x40d], 0x28
mov byte [ebp - 0x40c], 0x52
mov byte [ebp - 0x40b], 0x28
mov byte [ebp - 0x40a], 0x52
mov byte [ebp - 0x409], 1
mov byte [ebp - 0x408], 0x52
mov byte [ebp - 0x407], 0x28
mov byte [ebp - 0x406], 0x52
mov byte [ebp - 0x405], 0x75
mov byte [ebp - 0x404], 0x52
mov byte [ebp - 0x403], 0x71
mov byte [ebp - 0x402], 0x52
mov byte [ebp - 0x401], 0x75
mov byte [ebp - 0x400], 0x52
mov byte [ebp - 0x3ff], 0x37
mov byte [ebp - 0x3fe], 0x52
mov byte [ebp - 0x3fd], 0x59
mov byte [ebp - 0x3fc], 0x52
mov byte [ebp - 0x3fb], 0x4f
mov byte [ebp - 0x3fa], 0x52
mov byte [ebp - 0x3f9], 0x2d
mov byte [ebp - 0x3f8], 0x52
mov byte [ebp - 0x3f7], 0x52
mov byte [ebp - 0x3f6], 0x52
mov al, byte [ebp - 0x467]
cmp byte [ebp - 0x468], 0
jne 0x418796
xor edi, edi
lea esi, [edi + 0x7f]
nop dword [eax]
nop dword [eax + eax]
mov al, byte [ebp + edi - 0x467]
mov ecx, 0x52
movzx eax, al
sub ecx, eax
imul eax, ecx, 0x27
cdq
idiv esi
lea eax, [edx + 0x7f]
cdq
idiv esi
mov byte [ebp + edi - 0x467], dl
inc edi
cmp edi, 0x72
jb 0x418760
mov esi, dword [ebp - 0x2cc]
mov edi, dword [ebp - 0x504]
push edi
lea eax, [ebp - 0x467]
push ebx
push eax
call fcn.00410b60
add esp, 0xc
cmp edi, 5
jne 0x418d75
cmp dword [ebp - 8], 8
lea ebx, [ebp - 0x1c]
cmovae ebx, dword [ebp - 0x1c]
mov byte [ebp - 0x3f0], 0
mov byte [ebp - 0x3ef], 0x76
mov byte [ebp - 0x3ee], 0x4d
mov byte [ebp - 0x3ed], 0
mov byte [ebp - 0x3ec], 0x4d
mov byte [ebp - 0x3eb], 0x57
mov byte [ebp - 0x3ea], 0x4d
mov byte [ebp - 0x3e9], 0x53
mov byte [ebp - 0x3e8], 0x4d
mov byte [ebp - 0x3e7], 0x4e
mov byte [ebp - 0x3e6], 0x4d
mov byte [ebp - 0x3e5], 0x42
mov byte [ebp - 0x3e4], 0x4d
mov byte [ebp - 0x3e3], 0xb
mov byte [ebp - 0x3e2], 0x4d
mov byte [ebp - 0x3e1], 0x32
mov byte [ebp - 0x3e0], 0x4d
mov byte [ebp - 0x3df], 0x23
mov byte [ebp - 0x3de], 0x4d
mov byte [ebp - 0x3dd], 0x42
mov byte [ebp - 0x3dc], 0x4d
mov byte [ebp - 0x3db], 0x1d
mov byte [ebp - 0x3da], 0x4d
mov byte [ebp - 0x3d9], 0x61
mov byte [ebp - 0x3d8], 0x4d
mov byte [ebp - 0x3d7], 0x61
mov byte [ebp - 0x3d6], 0x4d
mov byte [ebp - 0x3d5], 9
mov byte [ebp - 0x3d4], 0x4d
mov byte [ebp - 0x3d3], 0x4e
mov byte [ebp - 0x3d2], 0x4d
mov byte [ebp - 0x3d1], 0x61
mov byte [ebp - 0x3d0], 0x4d
mov byte [ebp - 0x3cf], 0x42
mov byte [ebp - 0x3ce], 0x4d
mov byte [ebp - 0x3cd], 0x30
mov byte [ebp - 0x3cc], 0x4d
mov byte [ebp - 0x3cb], 0x1d
mov byte [ebp - 0x3ca], 0x4d
mov byte [ebp - 0x3c9], 0x35
mov byte [ebp - 0x3c8], 0x4d
mov byte [ebp - 0x3c7], 0x49
mov byte [ebp - 0x3c6], 0x4d
mov byte [ebp - 0x3c5], 0x42
mov byte [ebp - 0x3c4], 0x4d
mov byte [ebp - 0x3c3], 0x7a
mov byte [ebp - 0x3c2], 0x4d
mov byte [ebp - 0x3c1], 0x1d
mov byte [ebp - 0x3c0], 0x4d
mov byte [ebp - 0x3bf], 0xe
mov byte [ebp - 0x3be], 0x4d
mov byte [ebp - 0x3bd], 0x4e
mov byte [ebp - 0x3bc], 0x4d
mov byte [ebp - 0x3bb], 0x27
mov byte [ebp - 0x3ba], 0x4d
mov byte [ebp - 0x3b9], 0x35
mov byte [ebp - 0x3b8], 0x4d
mov byte [ebp - 0x3b7], 0x13
mov byte [ebp - 0x3b6], 0x4d
mov byte [ebp - 0x3b5], 0xe
mov byte [ebp - 0x3b4], 0x4d
mov byte [ebp - 0x3b3], 0x57
mov byte [ebp - 0x3b2], 0x4d
mov byte [ebp - 0x3b1], 0x42
mov byte [ebp - 0x3b0], 0x4d
mov byte [ebp - 0x3af], 0x64
mov byte [ebp - 0x3ae], 0x4d
mov byte [ebp - 0x3ad], 0x61
mov byte [ebp - 0x3ac], 0x4d
mov byte [ebp - 0x3ab], 0x55
mov byte [ebp - 0x3aa], 0x4d
mov byte [ebp - 0x3a9], 0x42
mov byte [ebp - 0x3a8], 0x4d
mov byte [ebp - 0x3a7], 0x40
mov byte [ebp - 0x3a6], 0x4d
mov byte [ebp - 0x3a5], 0xe
mov byte [ebp - 0x3a4], 0x4d
mov byte [ebp - 0x3a3], 0x57
mov byte [ebp - 0x3a2], 0x4d
mov byte [ebp - 0x3a1], 0x1d
mov byte [ebp - 0x3a0], 0x4d
mov byte [ebp - 0x39f], 0x3f
mov byte [ebp - 0x39e], 0x4d
mov byte [ebp - 0x39d], 0x75
mov byte [ebp - 0x39c], 0x4d
mov byte [ebp - 0x39b], 0x42
mov byte [ebp - 0x39a], 0x4d
mov byte [ebp - 0x399], 0x35
mov byte [ebp - 0x398], 0x4d
mov byte [ebp - 0x397], 0x13
mov byte [ebp - 0x396], 0x4d
mov byte [ebp - 0x395], 0x42
mov byte [ebp - 0x394], 0x4d
mov byte [ebp - 0x393], 0xe
mov byte [ebp - 0x392], 0x4d
mov byte [ebp - 0x391], 0x4e
mov byte [ebp - 0x390], 0x4d
mov byte [ebp - 0x38f], 0x61
mov byte [ebp - 0x38e], 0x4d
mov byte [ebp - 0x38d], 0x4e
mov byte [ebp - 0x38c], 0x4d
mov byte [ebp - 0x38b], 0x35
mov byte [ebp - 0x38a], 0x4d
mov byte [ebp - 0x389], 0x4d
mov byte [ebp - 0x388], 0x4d
mov al, byte [ebp - 0x3ef]
cmp byte [ebp - 0x3f0], 0
jne 0x418ae0
xor edi, edi
lea esi, [edi + 0x7f]
nop
mov al, byte [ebp + edi - 0x3ef]
mov ecx, 0x4d
movzx eax, al
sub ecx, eax
imul eax, ecx, 0x1a
cdq
idiv esi
lea eax, [edx + 0x7f]
cdq
idiv esi
mov byte [ebp + edi - 0x3ef], dl
inc edi
cmp edi, 0x68
jb 0x418ab0
mov esi, dword [ebp - 0x2cc]
push 5
lea eax, [ebp - 0x3ef]
push ebx
push eax
call fcn.00410b60
add esp, 0xc
lea ecx, [ebp - 0x1c]
cmp dword [ebp - 8], 8
cmovae ecx, dword [ebp - 0x1c]
call fcn.00418000
lea ebx, [ebp - 0x1c]
test eax, eax
jne 0x418e0e
cmp dword [ebp - 8], 8
cmovae ebx, dword [ebp - 0x1c]
mov byte [ebp - 0x328], al
mov byte [ebp - 0x327], 0x70
mov byte [ebp - 0x326], 0x14
mov byte [ebp - 0x325], 0x17
mov byte [ebp - 0x324], 0x14
mov byte [ebp - 0x323], 0x43
mov byte [ebp - 0x322], 0x14
mov byte [ebp - 0x321], 0x78
mov byte [ebp - 0x320], 0x14
mov byte [ebp - 0x31f], 0x7b
mov byte [ebp - 0x31e], 0x14
mov byte [ebp - 0x31d], 0x5b
mov byte [ebp - 0x31c], 0x14
mov byte [ebp - 0x31b], 0x55
mov byte [ebp - 0x31a], 0x14
mov byte [ebp - 0x319], 0x4e
mov byte [ebp - 0x318], 0x14
mov byte [ebp - 0x317], 0x48
mov byte [ebp - 0x316], 0x14
mov byte [ebp - 0x315], 0x22
mov byte [ebp - 0x314], 0x14
mov byte [ebp - 0x313], 0x78
mov byte [ebp - 0x312], 0x14
mov byte [ebp - 0x311], 0x35
mov byte [ebp - 0x310], 0x14
mov byte [ebp - 0x30f], 0x55
mov byte [ebp - 0x30e], 0x14
mov byte [ebp - 0x30d], 0x6e
mov byte [ebp - 0x30c], 0x14
mov byte [ebp - 0x30b], 0x28
mov byte [ebp - 0x30a], 0x14
mov byte [ebp - 0x309], 0x22
mov byte [ebp - 0x308], 0x14
mov byte [ebp - 0x307], 0xf
mov byte [ebp - 0x306], 0x14
mov byte [ebp - 0x305], 0x78
mov byte [ebp - 0x304], 0x14
mov byte [ebp - 0x303], 0x35
mov byte [ebp - 0x302], 0x14
mov byte [ebp - 0x301], 0x61
mov byte [ebp - 0x300], 0x14
mov byte [ebp - 0x2ff], 0x1b
mov byte [ebp - 0x2fe], 0x14
mov byte [ebp - 0x2fd], 0x78
mov byte [ebp - 0x2fc], 0x14
mov byte [ebp - 0x2fb], 0xf
mov byte [ebp - 0x2fa], 0x14
mov byte [ebp - 0x2f9], 0x6e
mov byte [ebp - 0x2f8], 0x14
mov byte [ebp - 0x2f7], 0x1b
mov byte [ebp - 0x2f6], 0x14
mov byte [ebp - 0x2f5], 0x22
mov byte [ebp - 0x2f4], 0x14
mov byte [ebp - 0x2f3], 0x7b
mov byte [ebp - 0x2f2], 0x14
mov byte [ebp - 0x2f1], 0x41
mov byte [ebp - 0x2f0], 0x14
mov byte [ebp - 0x2ef], 0x61
mov byte [ebp - 0x2ee], 0x14
mov byte [ebp - 0x2ed], 0x1b
mov byte [ebp - 0x2ec], 0x14
mov byte [ebp - 0x2eb], 0x21
mov byte [ebp - 0x2ea], 0x14
mov byte [ebp - 0x2e9], 0x78
mov byte [ebp - 0x2e8], 0x14
mov byte [ebp - 0x2e7], 0x58
mov byte [ebp - 0x2e6], 0x14
mov byte [ebp - 0x2e5], 0x2e
mov byte [ebp - 0x2e4], 0x14
mov byte [ebp - 0x2e3], 5
mov byte [ebp - 0x2e2], 0x14
mov byte [ebp - 0x2e1], 0x14
mov byte [ebp - 0x2e0], 0x14
mov al, byte [ebp - 0x327]
cmp byte [ebp - 0x328], 0
jne 0x418d63
xor edi, edi
lea esi, [edi + 0x7f]
nop word [eax + eax]
mov al, byte [ebp + edi - 0x327]
mov ecx, 0x14
movzx eax, al
sub ecx, eax
lea eax, [ecx + ecx*4]
shl eax, 2
cdq
idiv esi
lea eax, [edx + 0x7f]
cdq
idiv esi
mov byte [ebp + edi - 0x327], dl
inc edi
cmp edi, 0x48
jb 0x418d30
mov esi, dword [ebp - 0x2cc]
push 5
lea eax, [ebp - 0x327]
push ebx
push eax
call fcn.00410b60
add esp, 0xc
mov ecx, dword [esi + 0x18]
mov eax, dword [esi + 0x1c]
test ecx, ecx
je 0x418d84
mov dword [ecx + 0x1c], eax
jmp 0x418d8a
mov dword [ebp - 0x2bc], eax
mov ecx, dword [esi + 0x1c]
mov eax, dword [esi + 0x18]
mov dword [ecx], eax
mov eax, dword [esi + 0x14]
cmp eax, 8
jb 0x418da3
inc eax
push eax
push dword [esi]
call fcn.00403a50
mov dword [esi + 0x14], 7
cmp dword [esi + 0x14], 8
mov dword [esi + 0x10], 0
jb 0x418dbb
mov eax, dword [esi]
jmp 0x418dbd
mov eax, esi
xor ecx, ecx
push 0x20
push esi
mov word [eax], cx
call fcn.0041b38a
add esp, 8
mov eax, dword [ebp - 0x20]
cmp eax, 8
jb 0x418ddf
inc eax
push eax
push dword [ebp - 0x34]
call fcn.00403a50
xor eax, eax
mov dword [ebp - 0x20], 7
mov word [ebp - 0x34], ax
mov eax, dword [ebp - 8]
mov dword [ebp - 0x24], 0
cmp eax, 8
jb 0x418310
inc eax
push eax
push dword [ebp - 0x1c]
call fcn.00403a50
jmp 0x418310
cmp dword [ebp - 8], 8
cmovae ebx, dword [ebp - 0x1c]
mov byte [ebp - 0x380], 0
mov byte [ebp - 0x37f], 0x54
mov byte [ebp - 0x37e], 0x10
mov byte [ebp - 0x37d], 0x5a
mov byte [ebp - 0x37c], 0x10
mov byte [ebp - 0x37b], 0x75
mov byte [ebp - 0x37a], 0x10
mov byte [ebp - 0x379], 0x70
mov byte [ebp - 0x378], 0x10
mov byte [ebp - 0x377], 0x3b
mov byte [ebp - 0x376], 0x10
mov byte [ebp - 0x375], 0x4a
mov byte [ebp - 0x374], 0x10
mov byte [ebp - 0x373], 0x35
mov byte [ebp - 0x372], 0x10
mov byte [ebp - 0x371], 0x5c
mov byte [ebp - 0x370], 0x10
mov byte [ebp - 0x36f], 0x47
mov byte [ebp - 0x36e], 0x10
mov byte [ebp - 0x36d], 0x41
mov byte [ebp - 0x36c], 0x10
mov byte [ebp - 0x36b], 0x3e
mov byte [ebp - 0x36a], 0x10
mov byte [ebp - 0x369], 0x70
mov byte [ebp - 0x368], 0x10
mov byte [ebp - 0x367], 0x6b
mov byte [ebp - 0x366], 0x10
mov byte [ebp - 0x365], 0x71
mov byte [ebp - 0x364], 0x10
mov byte [ebp - 0x363], 0x3b
mov byte [ebp - 0x362], 0x10
mov byte [ebp - 0x361], 0x3b
mov byte [ebp - 0x360], 0x10
mov byte [ebp - 0x35f], 0x41
mov byte [ebp - 0x35e], 0x10
mov byte [ebp - 0x35d], 0x6b
mov byte [ebp - 0x35c], 0x10
mov byte [ebp - 0x35b], 0x6b
mov byte [ebp - 0x35a], 0x10
mov byte [ebp - 0x359], 0x44
mov byte [ebp - 0x358], 0x10
mov byte [ebp - 0x357], 0x71
mov byte [ebp - 0x356], 0x10
mov byte [ebp - 0x355], 0x56
mov byte [ebp - 0x354], 0x10
mov byte [ebp - 0x353], 0x56
mov byte [ebp - 0x352], 0x10
mov byte [ebp - 0x351], 0x7d
mov byte [ebp - 0x350], 0x10
mov byte [ebp - 0x34f], 0x70
mov byte [ebp - 0x34e], 0x10
mov byte [ebp - 0x34d], 0x44
mov byte [ebp - 0x34c], 0x10
mov byte [ebp - 0x34b], 0x5f
mov byte [ebp - 0x34a], 0x10
mov byte [ebp - 0x349], 0x68
mov byte [ebp - 0x348], 0x10
mov byte [ebp - 0x347], 0x70
mov byte [ebp - 0x346], 0x10
mov byte [ebp - 0x345], 0x3e
mov byte [ebp - 0x344], 0x10
mov byte [ebp - 0x343], 0x4d
mov byte [ebp - 0x342], 0x10
mov byte [ebp - 0x341], 0x68
mov byte [ebp - 0x340], 0x10
mov byte [ebp - 0x33f], 0x41
mov byte [ebp - 0x33e], 0x10
mov byte [ebp - 0x33d], 0x3b
mov byte [ebp - 0x33c], 0x10
mov byte [ebp - 0x33b], 0x6e
mov byte [ebp - 0x33a], 0x10
mov byte [ebp - 0x339], 0x5f
mov byte [ebp - 0x338], 0x10
mov byte [ebp - 0x337], 0x68
mov byte [ebp - 0x336], 0x10
mov byte [ebp - 0x335], 0x7d
mov byte [ebp - 0x334], 0x10
mov byte [ebp - 0x333], 0x70
mov byte [ebp - 0x332], 0x10
mov byte [ebp - 0x331], 0
mov byte [ebp - 0x330], 0x10
mov byte [ebp - 0x32f], 0x6b
mov byte [ebp - 0x32e], 0x10
mov byte [ebp - 0x32d], 0x1b
mov byte [ebp - 0x32c], 0x10
mov byte [ebp - 0x32b], 0x10
mov byte [ebp - 0x32a], 0x10
mov al, byte [ebp - 0x37f]
cmp byte [ebp - 0x380], 0
jne 0x4190ba
xor edi, edi
lea esi, [edi + 0x7f]
nop dword [eax + eax]
mov al, byte [ebp + edi - 0x37f]
mov ecx, 0x10
movzx eax, al
sub ecx, eax
imul eax, ecx, 0x2a
cdq
idiv esi
lea eax, [edx + 0x7f]
cdq
idiv esi
mov byte [ebp + edi - 0x37f], dl
inc edi
cmp edi, 0x56
jb 0x419090
push 5
lea eax, [ebp - 0x37f]
push ebx
push eax
call fcn.00410b60
mov eax, dword [0x435ab4]
lea edi, [ebp - 0x34]
add esp, 0xc
cmp dword [ebp - 0x20], 8
cmovae edi, dword [ebp - 0x34]
mov eax, dword [eax + 0xb8]
test eax, eax
jne 0x419100
push 0xe2b40f85
xor edx, edx
xor ecx, ecx
call fcn.004022b0
mov ecx, dword [0x435ab4]
mov dword [ecx + 0xb8], eax
lea ecx, [ebp - 0x2b8]
push ecx
push edi
call eax
mov ebx, eax
mov dword [ebp - 0x504], ebx
cmp ebx, 0xffffffff
jne 0x419595
cmp dword [ebp - 8], 8
lea ebx, [ebp - 0x1c]
cmovae ebx, dword [ebp - 0x1c]
mov byte [ebp - 0x500], 0
mov byte [ebp - 0x4ff], 0x1a
mov byte [ebp - 0x4fe], 0x43
mov byte [ebp - 0x4fd], 0x45
mov byte [ebp - 0x4fc], 0x43
mov byte [ebp - 0x4fb], 0x39
mov byte [ebp - 0x4fa], 0x43
mov byte [ebp - 0x4f9], 0x51
mov byte [ebp - 0x4f8], 0x43
mov byte [ebp - 0x4f7], 0x1a
mov byte [ebp - 0x4f6], 0x43
mov byte [ebp - 0x4f5], 0x45
mov byte [ebp - 0x4f4], 0x43
mov byte [ebp - 0x4f3], 0x16
mov byte [ebp - 0x4f2], 0x43
mov byte [ebp - 0x4f1], 0x2d
mov byte [ebp - 0x4f0], 0x43
mov byte [ebp - 0x4ef], 0x44
mov byte [ebp - 0x4ee], 0x43
mov byte [ebp - 0x4ed], 0x1a
mov byte [ebp - 0x4ec], 0x43
mov byte [ebp - 0x4eb], 0x45
mov byte [ebp - 0x4ea], 0x43
mov byte [ebp - 0x4e9], 0xb
mov byte [ebp - 0x4e8], 0x43
mov byte [ebp - 0x4e7], 0x68
mov byte [ebp - 0x4e6], 0x43
mov byte [ebp - 0x4e5], 0x29
mov byte [ebp - 0x4e4], 0x43
mov byte [ebp - 0x4e3], 0
mov byte [ebp - 0x4e2], 0x43
mov byte [ebp - 0x4e1], 0xc
mov byte [ebp - 0x4e0], 0x43
mov byte [ebp - 0x4df], 0x45
mov byte [ebp - 0x4de], 0x43
mov byte [ebp - 0x4dd], 0xb
mov byte [ebp - 0x4dc], 0x43
mov byte [ebp - 0x4db], 0x2d
mov byte [ebp - 0x4da], 0x43
mov byte [ebp - 0x4d9], 0x29
mov byte [ebp - 0x4d8], 0x43
mov byte [ebp - 0x4d7], 0xc
mov byte [ebp - 0x4d6], 0x43
mov byte [ebp - 0x4d5], 0
mov byte [ebp - 0x4d4], 0x43
mov byte [ebp - 0x4d3], 0x44
mov byte [ebp - 0x4d2], 0x43
mov byte [ebp - 0x4d1], 0x68
mov byte [ebp - 0x4d0], 0x43
mov byte [ebp - 0x4cf], 0x16
mov byte [ebp - 0x4ce], 0x43
mov byte [ebp - 0x4cd], 0x29
mov byte [ebp - 0x4cc], 0x43
mov byte [ebp - 0x4cb], 0xc
mov byte [ebp - 0x4ca], 0x43
mov byte [ebp - 0x4c9], 0x3a
mov byte [ebp - 0x4c8], 0x43
mov byte [ebp - 0x4c7], 0xb
mov byte [ebp - 0x4c6], 0x43
mov byte [ebp - 0x4c5], 0x29
mov byte [ebp - 0x4c4], 0x43
mov byte [ebp - 0x4c3], 0x3a
mov byte [ebp - 0x4c2], 0x43
mov byte [ebp - 0x4c1], 0x2e
mov byte [ebp - 0x4c0], 0x43
mov byte [ebp - 0x4bf], 0xc
mov byte [ebp - 0x4be], 0x43
mov byte [ebp - 0x4bd], 0x39
mov byte [ebp - 0x4bc], 0x43
mov byte [ebp - 0x4bb], 0x17
mov byte [ebp - 0x4ba], 0x43
mov byte [ebp - 0x4b9], 0x68
mov byte [ebp - 0x4b8], 0x43
mov byte [ebp - 0x4b7], 0x29
mov byte [ebp - 0x4b6], 0x43
mov byte [ebp - 0x4b5], 0x45
mov byte [ebp - 0x4b4], 0x43
mov byte [ebp - 0x4b3], 0x39
mov byte [ebp - 0x4b2], 0x43
mov byte [ebp - 0x4b1], 0x29
mov byte [ebp - 0x4b0], 0x43
mov byte [ebp - 0x4af], 0x51
mov byte [ebp - 0x4ae], 0x43
mov byte [ebp - 0x4ad], 0x45
mov byte [ebp - 0x4ac], 0x43
mov byte [ebp - 0x4ab], 0x16
mov byte [ebp - 0x4aa], 0x43
mov byte [ebp - 0x4a9], 0x68
mov byte [ebp - 0x4a8], 0x43
mov byte [ebp - 0x4a7], 0x3a
mov byte [ebp - 0x4a6], 0x43
mov byte [ebp - 0x4a5], 0x44
mov byte [ebp - 0x4a4], 0x43
mov byte [ebp - 0x4a3], 0x50
mov byte [ebp - 0x4a2], 0x43
mov byte [ebp - 0x4a1], 0x16
mov byte [ebp - 0x4a0], 0x43
mov byte [ebp - 0x49f], 0x38
mov byte [ebp - 0x49e], 0x43
mov byte [ebp - 0x49d], 0x29
mov byte [ebp - 0x49c], 0x43
mov byte [ebp - 0x49b], 0x1d
mov byte [ebp - 0x49a], 0x43
mov byte [ebp - 0x499], 0x2d
mov byte [ebp - 0x498], 0x43
mov byte [ebp - 0x497], 0x6d
mov byte [ebp - 0x496], 0x43
mov byte [ebp - 0x495], 0x29
mov byte [ebp - 0x494], 0x43
mov byte [ebp - 0x493], 0x31
mov byte [ebp - 0x492], 0x43
mov byte [ebp - 0x491], 0x68
mov byte [ebp - 0x490], 0x43
mov byte [ebp - 0x48f], 0x44
mov byte [ebp - 0x48e], 0x43
mov byte [ebp - 0x48d], 0x25
mov byte [ebp - 0x48c], 0x43
mov byte [ebp - 0x48b], 0xc
mov byte [ebp - 0x48a], 0x43
mov byte [ebp - 0x489], 0x2d
mov byte [ebp - 0x488], 0x43
mov byte [ebp - 0x487], 0x44
mov byte [ebp - 0x486], 0x43
mov byte [ebp - 0x485], 3
mov byte [ebp - 0x484], 0x43
mov byte [ebp - 0x483], 0x16
mov byte [ebp - 0x482], 0x43
mov byte [ebp - 0x481], 0x16
mov byte [ebp - 0x480], 0x43
mov byte [ebp - 0x47f], 0x50
mov byte [ebp - 0x47e], 0x43
mov byte [ebp - 0x47d], 0x16
mov byte [ebp - 0x47c], 0x43
mov byte [ebp - 0x47b], 0x29
mov byte [ebp - 0x47a], 0x43
mov byte [ebp - 0x479], 0x49
mov byte [ebp - 0x478], 0x43
mov byte [ebp - 0x477], 0x29
mov byte [ebp - 0x476], 0x43
mov byte [ebp - 0x475], 0x1d
mov byte [ebp - 0x474], 0x43
mov byte [ebp - 0x473], 0xb
mov byte [ebp - 0x472], 0x43
mov byte [ebp - 0x471], 0x5b
mov byte [ebp - 0x470], 0x43
mov byte [ebp - 0x46f], 0x6d
mov byte [ebp - 0x46e], 0x43
mov byte [ebp - 0x46d], 0x43
mov byte [ebp - 0x46c], 0x43
mov al, byte [ebp - 0x4ff]
cmp byte [ebp - 0x500], 0
jne 0x41957d
xor edi, edi
lea esi, [edi + 0x7f]
nop dword [eax]
mov al, byte [ebp + edi - 0x4ff]
mov ecx, 0x43
movzx eax, al
sub ecx, eax
imul eax, ecx, 0xb
cdq
idiv esi
lea eax, [edx + 0x7f]
cdq
idiv esi
mov byte [ebp + edi - 0x4ff], dl
inc edi
cmp edi, 0x94
jb 0x419550
push 5
lea eax, [ebp - 0x4ff]
push ebx
push eax
call fcn.00410b60
mov ebx, dword [ebp - 0x504]
add esp, 0xc
mov esi, dword [ebp - 0x508]
nop dword [eax + eax]
mov byte [ebp - 0x2c8], 0
mov byte [ebp - 0x2c7], 0x29
mov byte [ebp - 0x2c6], 0x2b
mov byte [ebp - 0x2c5], 0x2b
mov byte [ebp - 0x2c4], 0x2b
mov al, byte [ebp - 0x2c7]
cmp byte [ebp - 0x2c8], 0
jne 0x419610
xor edi, edi
lea esi, [edi + 0x7f]
nop word [eax + eax]
mov al, byte [ebp + edi - 0x2c7]
mov ecx, 0x2b
movzx eax, al
sub ecx, eax
imul eax, ecx, 0x17
cdq
idiv esi
lea eax, [edx + 0x7f]
cdq
idiv esi
mov byte [ebp + edi - 0x2c7], dl
inc edi
cmp edi, 4
jb 0x4195e0
mov esi, dword [ebp - 0x508]
mov eax, dword [0x435ab4]
mov eax, dword [eax + 0xc4]
test eax, eax
jne 0x419639
push 0x397b11df
xor edx, edx
xor ecx, ecx
call fcn.004022b0
mov ecx, dword [0x435ab4]
mov dword [ecx + 0xc4], eax
lea ecx, [ebp - 0x2c7]
push ecx
lea ecx, [ebp - 0x28c]
push ecx
call eax
test eax, eax
je 0x41995e
mov byte [ebp - 0x2d4], 0
mov byte [ebp - 0x2d3], 0x52
mov byte [ebp - 0x2d2], 0x34
mov byte [ebp - 0x2d1], 0x52
mov byte [ebp - 0x2d0], 0x34
mov byte [ebp - 0x2cf], 0x34
mov byte [ebp - 0x2ce], 0x34
mov al, byte [ebp - 0x2d3]
cmp byte [ebp - 0x2d4], 0
jne 0x4196c8
xor ecx, ecx
lea edi, [ecx + 0x7f]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x2d3]
movzx eax, al
sub eax, 0x34
lea eax, [eax + eax*4]
add eax, eax
cdq
idiv edi
lea eax, [edx + 0x7f]
cdq
idiv edi
mov byte [ebp + ecx - 0x2d3], dl
inc ecx
cmp ecx, 6
jb 0x4196a0
mov eax, dword [0x435ab4]
mov eax, dword [eax + 0xc4]
test eax, eax
jne 0x4196f1
push 0x397b11df
xor edx, edx
xor ecx, ecx
call fcn.004022b0
mov ecx, dword [0x435ab4]
mov dword [ecx + 0xc4], eax
lea ecx, [ebp - 0x2d3]
push ecx
lea ecx, [ebp - 0x28c]
push ecx
call eax
test eax, eax
je 0x41995e
mov eax, dword [ebp - 0x2b8]
test eax, 0x400
jne 0x41995e
test al, 0x10
je 0x419828
lea ecx, [ebp - 0x28c]
call fcn.00417130
test eax, eax
je 0x419828
sub esp, 0x18
xor eax, eax
mov edx, esp
mov dword [edx + 0x14], 7
mov dword [edx + 0x10], 0
mov word [edx], ax
cmp word [ebp - 0x28c], ax
je 0x41976f
lea eax, [ebp - 0x28c]
lea edi, [eax + 2]
nop
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x419760
sub eax, edi
sar eax, 1
push eax
lea eax, [ebp - 0x28c]
mov ecx, edx
push eax
call fcn.00403950
sub esp, 0x18
xor eax, eax
mov ecx, esp
push 0xffffffffffffffff
mov dword [ecx + 0x14], 7
mov dword [ecx + 0x10], 0
push eax
mov word [ecx], ax
lea eax, [ebp - 0x1c]
push eax
call fcn.00403b30
lea ecx, [ebp - 0x4c]
call fcn.00416eb0
push 0x20
call fcn.0041b352
mov edi, eax
add esp, 4
xor eax, eax
mov dword [edi + 0x14], 7
mov dword [edi + 0x10], 0
mov word [edi], ax
lea eax, [ebp - 0x4c]
cmp edi, eax
je 0x4197dc
push 0xffffffffffffffff
push 0
push eax
mov ecx, edi
call fcn.00403b30
mov dword [edi + 0x18], 0
lea ecx, [edi + 0x18]
mov eax, dword [ebp - 0x2bc]
mov dword [edi + 0x1c], eax
mov eax, dword [ebp - 0x2bc]
mov dword [eax], edi
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x2bc], ecx
cmp eax, 8
jb 0x41980f
inc eax
push eax
push dword [ebp - 0x4c]
call fcn.00403a50
xor eax, eax
mov dword [ebp - 0x38], 7
mov dword [ebp - 0x3c], 0
mov word [ebp - 0x4c], ax
jmp 0x41995e
lea ecx, [ebp - 0x28c]
call fcn.00417a30
test eax, eax
je 0x41995e
sub esp, 0x18
xor eax, eax
mov edx, esp
mov dword [edx + 0x14], 7
mov dword [edx + 0x10], 0
mov word [edx], ax
cmp word [ebp - 0x28c], ax
jne 0x419860
xor ecx, ecx
jmp 0x41987f
lea ecx, [ebp - 0x28c]
lea edi, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x419870
sub ecx, edi
sar ecx, 1
push ecx
lea eax, [ebp - 0x28c]
mov ecx, edx
push eax
call fcn.00403950
sub esp, 0x18
xor eax, eax
mov ecx, esp
push 0xffffffffffffffff
mov dword [ecx + 0x14], 7
mov dword [ecx + 0x10], 0
push eax
mov word [ecx], ax
lea eax, [ebp - 0x1c]
push eax
call fcn.00403b30
lea ecx, [ebp - 0x64]
call fcn.00416eb0
sub esp, 0x18
xor eax, eax
mov ecx, esp
push 0xffffffffffffffff
mov dword [ecx + 0x14], 7
mov dword [ecx + 0x10], 0
push eax
mov word [ecx], ax
lea eax, [ebp - 0x64]
push eax
call fcn.00403b30
mov ecx, esi
call fcn.0041ace0
cmp eax, 0x3a98
jl 0x419938
test esi, esi
jne 0x4198f7
mov eax, 0x435b48
jmp 0x41990d
cmp esi, 1
jne 0x419903
mov eax, 0x435bb0
jmp 0x41990d
cmp esi, 2
jne 0x419938
mov eax, 0x435b7c
mov edi, dword [eax + 0x30]
mov eax, dword [0x435ab4]
mov eax, dword [eax + 0x2c]
test eax, eax
jne 0x419933
push 0x6a095e21
xor edx, edx
xor ecx, ecx
call fcn.004022b0
mov ecx, dword [0x435ab4]
mov dword [ecx + 0x2c], eax
push 0xffffffffffffffff
push edi
call eax
mov eax, dword [ebp - 0x50]
cmp eax, 8
jb 0x41994a
inc eax
push eax
push dword [ebp - 0x64]
call fcn.00403a50
xor eax, eax
mov dword [ebp - 0x50], 7
mov dword [ebp - 0x54], 0
mov word [ebp - 0x64], ax
mov eax, dword [0x435ab4]
mov eax, dword [eax + 0xbc]
test eax, eax
jne 0x419987
push 0x9aea18e1
xor edx, edx
xor ecx, ecx
call fcn.004022b0
mov ecx, dword [0x435ab4]
mov dword [ecx + 0xbc], eax
lea ecx, [ebp - 0x2b8]
push ecx
push ebx
call eax
test eax, eax
jne 0x4195a0
mov esi, dword [ebp - 0x2cc]
mov ecx, dword [esi + 0x18]
mov eax, dword [esi + 0x1c]
test ecx, ecx
je 0x4199ae
mov dword [ecx + 0x1c], eax
jmp 0x4199b4
mov dword [ebp - 0x2bc], eax
mov ecx, dword [esi + 0x1c]
mov eax, dword [esi + 0x18]
mov dword [ecx], eax
mov eax, dword [esi + 0x14]
cmp eax, 8
jb 0x4199cd
inc eax
push eax
push dword [esi]
call fcn.00403a50
mov dword [esi + 0x14], 7
cmp dword [esi + 0x14], 8
mov dword [esi + 0x10], 0
jb 0x4199e5
mov eax, dword [esi]
jmp 0x4199e7
mov eax, esi
xor ecx, ecx
push 0x20
push esi
mov word [eax], cx
call fcn.0041b38a
mov eax, dword [0x435ab4]
add esp, 8
mov eax, dword [eax + 0xc0]
test eax, eax
jne 0x419a20
push 0x75fcf770
xor edx, edx
xor ecx, ecx
call fcn.004022b0
mov ecx, dword [0x435ab4]
mov dword [ecx + 0xc0], eax
push ebx
call eax
jmp 0x418dcd
mov eax, dword [ebp + 0x1c]
cmp eax, 8
jb 0x419a3a
inc eax
push eax
push dword [ebp + 8]
call fcn.00403a50
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0041b142
mov esp, ebp
pop ebp
ret 0x18