Function at 0x4040bc
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xb90
push esi
push edi
mov al, byte [0x417fec]
mov byte [ebp - 0x648], al
xor ecx, ecx
mov dword [ebp - 0x647], ecx
mov dl, byte [0x417ff0]
mov byte [ebp - 0x638], dl
mov ecx, 0x40
xor eax, eax
lea edi, [ebp - 0x637]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov al, byte [0x417ff4]
mov byte [ebp - 0xa58], al
mov ecx, 0xf9
xor eax, eax
lea edi, [ebp - 0xa57]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov dword [ebp - 0x40c], 0
mov dword [ebp - 0xb60], 0
mov dword [ebp - 0x660], 0
mov dword [ebp - 0x3f4], 0
mov cl, byte [0x417ff8]
mov byte [ebp - 0xb5c], cl
mov ecx, 0x40
xor eax, eax
lea edi, [ebp - 0xb5b]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov dword [ebp - 0x524], 0
mov dl, byte [0x417ffc]
mov byte [ebp - 0x51c], dl
mov ecx, 0x40
xor eax, eax
lea edi, [ebp - 0x51b]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov dword [ebp - 0x534], 0
mov dword [ebp - 0x640], 0
mov dword [ebp - 0x400], 0
mov dword [ebp - 0x670], 0
mov dword [ebp - 0x410], 0
mov dword [ebp - 0x63c], 0
mov dword [ebp - 0x3f0], 0
mov dword [ebp - 0x3ec], 0
mov dword [ebp - 0x3fc], 0
mov dword [ebp - 0x668], 0xfffffffe
mov al, byte [0x418000]
mov byte [ebp - 0x3e8], al
mov ecx, 0xf9
xor eax, eax
lea edi, [ebp - 0x3e7]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov cl, byte [0x418004]
mov byte [ebp - 0x530], cl
xor edx, edx
mov dword [ebp - 0x52f], edx
mov dword [ebp - 0x52b], edx
mov byte [ebp - 0x527], dl
mov al, byte [0x418008]
mov byte [ebp - 0x65c], al
xor ecx, ecx
mov dword [ebp - 0x65b], ecx
mov dword [ebp - 0x657], ecx
mov byte [ebp - 0x653], cl
mov dword [ebp - 0x3f8], 0
mov dword [ebp - 0x418], 0
mov dword [ebp - 0x408], 0
mov dword [ebp - 0x404], 0
mov dword [ebp - 0x520], 0
mov dword [ebp - 0x414], 0
mov dword [ebp - 0x66c], 0
mov dword [ebp - 0x650], 0
push 0x63
call fcn.00405829
add esp, 4
push eax
lea edx, [ebp - 0x648]
push edx
call fcn.00407650
add esp, 8
push 0x6c
call fcn.00405829
add esp, 4
push eax
lea eax, [ebp - 0x648]
push eax
call fcn.00407660
add esp, 8
push 0x73
call fcn.00405829
add esp, 4
push eax
lea ecx, [ebp - 0x648]
push ecx
call fcn.00407660
add esp, 8
mov dword [ebp - 0x408], 0
mov dword [ebp - 0x418], 2
push 0x410268
push 0x4128e8
push str._s_s
lea edx, [ebp - 0x638]
push edx
call fcn.004075f6
add esp, 0x10
push 0x410274
push 1
call fcn.0040580d
add esp, 4
push eax
call fcn.0040754d
add esp, 8
mov dword [ebp - 0x64c], eax
cmp dword [ebp - 0x64c], 0
jne 0x404353
push str.Error_bdembed1____Quiting
push 0x410294
call fcn.00407941
add esp, 8
push 1
call fcn.0040786c
push 2
push 0
mov eax, dword [ebp - 0x64c]
push eax
call fcn.0040737b
add esp, 0xc
mov ecx, dword [ebp - 0x64c]
push ecx
call fcn.00407223
add esp, 4
mov esi, eax
push 0x417a2c
call fcn.00407a87
add esp, 4
sub esi, eax
mov dword [0x417a3c], esi
mov dword [ebp - 0x3fc], 0x1699
push 2
mov edx, dword [0x417a3c]
neg edx
mov eax, dword [0x4129ec]
lea ecx, [edx + eax - 0xc]
push ecx
mov edx, dword [ebp - 0x64c]
push edx
call fcn.0040737b
add esp, 0xc
mov eax, dword [ebp - 0x64c]
push eax
push 0xd
lea ecx, [ebp - 0x51c]
push ecx
call fcn.004071cc
add esp, 0xc
mov edx, dword [ebp - 0x668]
push edx
lea eax, [ebp - 0x51c]
push eax
call fcn.0040539c
add esp, 8
push eax
call fcn.00405557
add esp, 4
mov dword [ebp - 0x524], eax
push 2
mov ecx, dword [ebp - 0x524]
mov edx, dword [0x417a3c]
lea eax, [edx + ecx + 0xc]
imul eax, eax, 0xffffffff
add eax, dword [0x4129ec]
push eax
mov ecx, dword [ebp - 0x64c]
push ecx
call fcn.0040737b
add esp, 0xc
mov edx, dword [ebp - 0x64c]
push edx
push 6
lea eax, [ebp - 0x51c]
push eax
call fcn.004071cc
add esp, 0xc
mov ecx, dword [ebp - 0x668]
push ecx
lea edx, [ebp - 0x51c]
push edx
call fcn.0040539c
add esp, 8
push eax
call fcn.00405557
add esp, 4
mov dword [0x411350], eax
mov eax, dword [ebp - 0x64c]
push eax
push 6
lea ecx, [ebp - 0x51c]
push ecx
call fcn.004071cc
add esp, 0xc
mov edx, dword [ebp - 0x668]
push edx
lea eax, [ebp - 0x51c]
push eax
call fcn.0040539c
add esp, 8
push eax
lea ecx, [ebp - 0x530]
push ecx
call fcn.00407650
add esp, 8
mov dword [ebp - 0x3f4], 0x160
mov dword [ebp - 0x650], 0
mov dword [ebp - 0x66c], 0
push 0x417ac4
lea edx, [ebp - 0x530]
push edx
call fcn.00407410
add esp, 8
mov dword [ebp - 0x66c], eax
cmp dword [ebp - 0x66c], 0
jne 0x4044e6
mov dword [ebp - 0x650], 1
push 0x417aec
lea eax, [ebp - 0x530]
push eax
call fcn.00407410
add esp, 8
mov dword [ebp - 0x66c], eax
cmp dword [ebp - 0x66c], 0
jne 0x404513
mov dword [ebp - 0x650], 1
mov dword [ebp - 0x3f4], 0x1be
push 0x410298
push 0x417b24
call fcn.00407650
add esp, 8
mov dword [ebp - 0x66c], 0
mov dword [0x417a1c], 0
push 0x41800c
push 0x417b14
call fcn.00407650
add esp, 8
push 0x418010
lea ecx, [ebp - 0x65c]
push ecx
call fcn.00407650
add esp, 8
push 0x417b24
call fcn.00407740
add esp, 4
mov dword [ebp - 0x3f8], eax
mov dword [ebp - 0x640], 1
jmp 0x404597
mov edx, dword [ebp - 0x640]
add edx, 1
mov dword [ebp - 0x640], edx
mov eax, dword [ebp - 0x3f8]
add eax, 1
cmp dword [ebp - 0x640], eax
jge 0x40460e
push 1
mov ecx, dword [ebp - 0x640]
push ecx
push 0x417b24
call fcn.004058e9
add esp, 0xc
push eax
call fcn.00405885
add esp, 4
push eax
call fcn.00405287
add esp, 4
mov dword [ebp - 0x408], eax
mov dl, byte [ebp - 0x408]
push edx
call fcn.00405829
add esp, 4
push eax
lea eax, [ebp - 0x65c]
push eax
call fcn.00407650
add esp, 8
lea ecx, [ebp - 0x65c]
push ecx
push 0x417b14
call fcn.00407660
add esp, 8
jmp 0x404588
push 0x417b14
call fcn.00405b0c
add esp, 4
push eax
push 0x417b30
call fcn.00407650
add esp, 8
push 0x417b30
call fcn.00407740
add esp, 4
mov dword [ebp - 0x3f8], eax
cmp dword [ebp - 0x3f8], 1
jle 0x40464a
call fcn.00405cdf
mov dword [0x417a1c], 0
push 0x417a2c
call fcn.00407a87
add esp, 4
mov dword [ebp - 0x3f0], eax
mov edx, dword [ebp - 0x64c]
push edx
push 2
lea eax, [ebp - 0x51c]
push eax
call fcn.004071cc
add esp, 0xc
mov ecx, dword [ebp - 0x668]
push ecx
lea edx, [ebp - 0x51c]
push edx
call fcn.0040539c
add esp, 8
push eax
call fcn.00405885
add esp, 4
mov dword [0x411344], eax
mov eax, dword [ebp - 0x64c]
push eax
push 2
lea ecx, [ebp - 0x51c]
push ecx
call fcn.004071cc
add esp, 0xc
mov edx, dword [ebp - 0x668]
push edx
lea eax, [ebp - 0x51c]
push eax
call fcn.0040539c
add esp, 8
push eax
call fcn.00405885
add esp, 4
mov dword [0x411348], eax
mov dword [ebp - 0x3f4], 0x1bd0
mov dword [ebp - 0x534], 0
jmp 0x404704
mov ecx, dword [ebp - 0x534]
add ecx, 1
mov dword [ebp - 0x534], ecx
mov edx, dword [ebp - 0x534]
cmp edx, dword [0x411350]
jge 0x405257
push 2
mov eax, dword [0x417a3c]
add eax, dword [ebp - 0x524]
mov ecx, dword [ebp - 0x534]
imul ecx, ecx, 0x18
sub eax, ecx
imul eax, eax, 0xffffffff
add eax, dword [0x4129ec]
push eax
mov edx, dword [ebp - 0x64c]
push edx
call fcn.0040737b
add esp, 0xc
mov eax, dword [ebp - 0x64c]
push eax
push 0xd
lea ecx, [ebp - 0x51c]
push ecx
call fcn.004071cc
add esp, 0xc
mov edx, dword [ebp - 0x668]
push edx
lea eax, [ebp - 0x51c]
push eax
call fcn.0040539c
add esp, 8
push eax
call fcn.00405557
add esp, 4
mov dword [ebp - 0x670], eax
mov ecx, dword [ebp - 0x64c]
push ecx
push 0xc
lea edx, [ebp - 0x51c]
push edx
call fcn.004071cc
add esp, 0xc
mov eax, dword [ebp - 0x668]
push eax
lea ecx, [ebp - 0x51c]
push ecx
call fcn.0040539c
add esp, 8
push eax
call fcn.00405557
add esp, 4
mov dword [ebp - 0x410], eax
mov edx, dword [ebp - 0x64c]
mov eax, dword [edx + 4]
sub eax, 1
mov ecx, dword [ebp - 0x64c]
mov dword [ecx + 4], eax
mov edx, dword [ebp - 0x64c]
cmp dword [edx + 4], 0
jl 0x40480e
mov eax, dword [ebp - 0x64c]
mov ecx, dword [eax]
movsx edx, byte [ecx]
and edx, 0xff
mov dword [ebp - 0xb64], edx
mov eax, dword [ebp - 0x64c]
mov ecx, dword [eax]
add ecx, 1
mov edx, dword [ebp - 0x64c]
mov dword [edx], ecx
jmp 0x404823
mov eax, dword [ebp - 0x64c]
push eax
call fcn.004070f3
add esp, 4
mov dword [ebp - 0xb64], eax
mov ecx, dword [ebp - 0xb64]
add ecx, dword [ebp - 0x668]
mov dword [ebp - 0x400], ecx
cmp dword [ebp - 0x400], 0xff
jle 0x404853
mov edx, dword [ebp - 0x400]
sub edx, 0x100
mov dword [ebp - 0x400], edx
cmp dword [ebp - 0x400], 0
jge 0x40486d
mov eax, dword [ebp - 0x400]
add eax, 0x100
mov dword [ebp - 0x400], eax
push 2
mov ecx, dword [ebp - 0x524]
mov edx, dword [0x417a3c]
lea eax, [edx + ecx + 0xc]
sub eax, dword [ebp - 0x670]
imul eax, eax, 0xffffffff
add eax, dword [0x4129ec]
push eax
mov ecx, dword [ebp - 0x64c]
push ecx
call fcn.0040737b
add esp, 0xc
mov edx, dword [ebp - 0x64c]
push edx
mov eax, dword [ebp - 0x400]
add eax, 1
push eax
lea ecx, [ebp - 0x51c]
push ecx
call fcn.004071cc
add esp, 0xc
mov edx, dword [ebp - 0x668]
push edx
lea eax, [ebp - 0x51c]
push eax
call fcn.0040539c
add esp, 8
push eax
lea ecx, [ebp - 0xb5c]
push ecx
call fcn.00407650
add esp, 8
lea edx, [ebp - 0x638]
push edx
lea eax, [ebp - 0xa58]
push eax
call fcn.00407650
add esp, 8
lea ecx, [ebp - 0xb5c]
push ecx
lea edx, [ebp - 0xa58]
push edx
call fcn.00407660
add esp, 8
push 0x418014
mov eax, dword [ebp - 0x534]
imul eax, eax, 0x3e8
add eax, 0x586600
push eax
call fcn.00407650
add esp, 8
mov ecx, dword [ebp - 0x410]
sub ecx, dword [ebp - 0x400]
test ecx, ecx
jle 0x405252
mov edx, dword [0x411350]
sub edx, 2
cmp dword [ebp - 0x534], edx
jge 0x404ded
cmp dword [0x411344], 1
jne 0x404a5d
push 0
push 1
push 0x18
mov eax, dword [0xf0fc80]
push eax
call fcn.00406fb6
add esp, 0x10
push 0x4102a4
call fcn.00407941
add esp, 4
lea ecx, [ebp - 0xb5c]
push ecx
call fcn.00407941
add esp, 4
mov edx, dword [ebp - 0x410]
sub edx, dword [ebp - 0x400]
mov dword [ebp - 0xb68], edx
fild dword [ebp - 0xb68]
sub esp, 8
fstp qword [esp]
call fcn.004058a2
add esp, 8
push eax
call fcn.00407941
add esp, 4
push str._bytes
call fcn.00407941
add esp, 4
push 0x4102b0
call fcn.00407941
add esp, 4
mov eax, dword [ebp - 0x534]
add eax, 1
mov dword [ebp - 0xb6c], eax
fild dword [ebp - 0xb6c]
sub esp, 8
fstp qword [esp]
call fcn.004058a2
add esp, 8
push eax
call fcn.00407941
add esp, 4
push 0x4102b4
call fcn.00407941
add esp, 4
mov ecx, dword [0x411350]
sub ecx, 2
mov dword [ebp - 0xb70], ecx
fild dword [ebp - 0xb70]
sub esp, 8
fstp qword [esp]
call fcn.004058a2
add esp, 8
push eax
call fcn.00407941
add esp, 4
push 0x4102b8
call fcn.00407941
add esp, 4
push 0x4102bc
call fcn.00407941
add esp, 4
push 0x22
call fcn.00405829
add esp, 4
push eax
lea edx, [ebp - 0xa58]
push edx
push 0x22
call fcn.00405829
add esp, 4
push eax
push 0x417a78
push 0x22
call fcn.00405829
add esp, 4
push eax
lea eax, [ebp - 0xa58]
push eax
push 0x22
call fcn.00405829
add esp, 4
push eax
push 0x417a5c
push 0x4102c0
lea ecx, [ebp - 0x3e8]
push ecx
call fcn.004075f6
add esp, 0x28
lea edx, [ebp - 0x3e8]
push edx
call fcn.00407560
add esp, 4
lea eax, [ebp - 0x3e8]
push eax
mov ecx, dword [ebp - 0x534]
imul ecx, ecx, 0x3e8
add ecx, 0x586600
push ecx
call fcn.00407650
add esp, 8
push 0x4102d4
lea edx, [ebp - 0xa58]
push edx
call fcn.0040754d
add esp, 8
mov dword [ebp - 0x664], eax
cmp dword [ebp - 0x664], 0
je 0x404ded
mov dword [0x417a1c], 0
mov dword [ebp - 0x640], 1
jmp 0x404b32
mov eax, dword [ebp - 0x640]
add eax, 1
mov dword [ebp - 0x640], eax
mov ecx, dword [ebp - 0x410]
sub ecx, dword [ebp - 0x400]
add ecx, 1
cmp dword [ebp - 0x640], ecx
jge 0x404dde
mov edx, dword [ebp - 0x64c]
mov eax, dword [edx + 4]
sub eax, 1
mov ecx, dword [ebp - 0x64c]
mov dword [ecx + 4], eax
mov edx, dword [ebp - 0x64c]
cmp dword [edx + 4], 0
jl 0x404b9a
mov eax, dword [ebp - 0x64c]
mov ecx, dword [eax]
movsx edx, byte [ecx]
and edx, 0xff
mov dword [ebp - 0xb74], edx
mov eax, dword [ebp - 0x64c]
mov ecx, dword [eax]
add ecx, 1
mov edx, dword [ebp - 0x64c]
mov dword [edx], ecx
jmp 0x404baf
mov eax, dword [ebp - 0x64c]
push eax
call fcn.004070f3
add esp, 4
mov dword [ebp - 0xb74], eax
mov ecx, dword [ebp - 0xb74]
mov dword [ebp - 0x408], ecx
mov edx, dword [ebp - 0x408]
push edx
call fcn.00405287
add esp, 4
mov dword [ebp - 0x408], eax
mov eax, dword [ebp - 0x664]
mov ecx, dword [eax + 4]
sub ecx, 1
mov edx, dword [ebp - 0x664]
mov dword [edx + 4], ecx
mov eax, dword [ebp - 0x664]
cmp dword [eax + 4], 0
jl 0x404c29
mov ecx, dword [ebp - 0x664]
mov edx, dword [ecx]
mov al, byte [ebp - 0x408]
mov byte [edx], al
movsx ecx, byte [ebp - 0x408]
and ecx, 0xff
mov dword [ebp - 0xb78], ecx
mov edx, dword [ebp - 0x664]
mov eax, dword [edx]
add eax, 1
mov ecx, dword [ebp - 0x664]
mov dword [ecx], eax
jmp 0x404c45
mov edx, dword [ebp - 0x664]
push edx
mov eax, dword [ebp - 0x408]
push eax
call fcn.00407972
add esp, 8
mov dword [ebp - 0xb78], eax
mov ecx, dword [ebp - 0x40c]
add ecx, 1
mov dword [ebp - 0x40c], ecx
mov edx, dword [ebp - 0xb60]
add edx, 1
mov dword [ebp - 0xb60], edx
cmp dword [ebp - 0x3f0], 0x1312d00
jbe 0x404dd9
cmp dword [ebp - 0x40c], 0x4c4b40
jbe 0x404dd9
lea eax, [ebp - 0x648]
push eax
call fcn.00407560
add esp, 4
push 0
push 0x33
push 0xd
mov ecx, dword [0xf0fc80]
push ecx
call fcn.00406fb6
add esp, 0x10
push 0x4102d8
call fcn.00407941
add esp, 4
mov eax, dword [ebp - 0x3f0]
xor edx, edx
mov ecx, 0x64
div ecx
mov ecx, eax
mov eax, dword [ebp - 0xb60]
xor edx, edx
div ecx
mov dword [ebp - 0x660], eax
mov dword [ebp - 0x40c], 0
mov edx, dword [ebp - 0xb60]
cmp edx, dword [ebp - 0x3f0]
jb 0x404cfc
mov eax, dword [ebp - 0x3f0]
sub eax, 1
mov dword [ebp - 0xb60], eax
push 0
push 0x21
push 0xc
mov ecx, dword [0xf0fc80]
push ecx
call fcn.00406fb6
add esp, 0x10
push str.Loading__
call fcn.00407941
add esp, 4
mov edx, dword [ebp - 0x660]
mov dword [ebp - 0xb80], edx
mov dword [ebp - 0xb7c], 0
fild qword [ebp - 0xb80]
sub esp, 8
fstp qword [esp]
call fcn.004058a2
add esp, 8
push eax
call fcn.00407941
add esp, 4
push str.____
call fcn.00407941
add esp, 4
push 0
push 0x1e
push 0xd
mov eax, dword [0xf0fc80]
push eax
call fcn.00406fb6
add esp, 0x10
push 0x4102f0
call fcn.00407941
add esp, 4
mov dword [ebp - 0x63c], 0
jmp 0x404d9a
mov ecx, dword [ebp - 0x63c]
add ecx, 1
mov dword [ebp - 0x63c], ecx
mov edx, dword [ebp - 0x63c]
cmp edx, dword [ebp - 0x660]
jae 0x404dd9
mov eax, dword [ebp - 0x3ec]
add eax, 1
mov dword [ebp - 0x3ec], eax
cmp dword [ebp - 0x3ec], 4
jbe 0x404dd7
push 0x4102f4
call fcn.00407941
add esp, 4
mov dword [ebp - 0x3ec], 0
jmp 0x404d8b
jmp 0x404b23
mov ecx, dword [ebp - 0x664]
push ecx
call fcn.00407494
add esp, 4
mov edx, dword [0x411350]
sub edx, 2
cmp dword [ebp - 0x534], edx
jne 0x40502f
push 0x413d78
lea eax, [ebp - 0xa58]
push eax
call fcn.00407650
add esp, 8
push 0x22
call fcn.00405829
add esp, 4
push eax
lea ecx, [ebp - 0xa58]
push ecx
push 0x22
call fcn.00405829
add esp, 4
push eax
push 0x417a78
push 0x22
call fcn.00405829
add esp, 4
push eax
lea edx, [ebp - 0xa58]
push edx
push 0x22
call fcn.00405829
add esp, 4
push eax
push 0x417a5c
push 0x4102f8
lea eax, [ebp - 0x3e8]
push eax
call fcn.004075f6
add esp, 0x28
lea ecx, [ebp - 0x3e8]
push ecx
call fcn.00407560
add esp, 4
lea edx, [ebp - 0x3e8]
push edx
mov eax, dword [ebp - 0x534]
imul eax, eax, 0x3e8
add eax, 0x586600
push eax
call fcn.00407650
add esp, 8
push 0x41030c
lea ecx, [ebp - 0xa58]
push ecx
call fcn.0040754d
add esp, 8
mov dword [ebp - 0x664], eax
cmp dword [ebp - 0x664], 0
je 0x40502f
mov edx, dword [ebp - 0x664]
push edx
push 0x413f80
call fcn.004074ea
add esp, 8
mov dword [0x417a1c], 0
mov dword [ebp - 0x640], 1
jmp 0x404efe
mov eax, dword [ebp - 0x640]
add eax, 1
mov dword [ebp - 0x640], eax
mov ecx, dword [ebp - 0x410]
sub ecx, dword [ebp - 0x400]
add ecx, 1
cmp dword [ebp - 0x640], ecx
jge 0x405020
mov edx, dword [ebp - 0x64c]
mov eax, dword [edx + 4]
sub eax, 1
mov ecx, dword [ebp - 0x64c]
mov dword [ecx + 4], eax
mov edx, dword [ebp - 0x64c]
cmp dword [edx + 4], 0
jl 0x404f66
mov eax, dword [ebp - 0x64c]
mov ecx, dword [eax]
movsx edx, byte [ecx]
and edx, 0xff
mov dword [ebp - 0xb84], edx
mov eax, dword [ebp - 0x64c]
mov ecx, dword [eax]
add ecx, 1
mov edx, dword [ebp - 0x64c]
mov dword [edx], ecx
jmp 0x404f7b
mov eax, dword [ebp - 0x64c]
push eax
call fcn.004070f3
add esp, 4
mov dword [ebp - 0xb84], eax
mov ecx, dword [ebp - 0xb84]
mov dword [ebp - 0x408], ecx
mov edx, dword [ebp - 0x408]
push edx
call fcn.00405287
add esp, 4
mov dword [ebp - 0x408], eax
mov eax, dword [ebp - 0x664]
mov ecx, dword [eax + 4]
sub ecx, 1
mov edx, dword [ebp - 0x664]
mov dword [edx + 4], ecx
mov eax, dword [ebp - 0x664]
cmp dword [eax + 4], 0
jl 0x404ff5
mov ecx, dword [ebp - 0x664]
mov edx, dword [ecx]
mov al, byte [ebp - 0x408]
mov byte [edx], al
movsx ecx, byte [ebp - 0x408]
and ecx, 0xff
mov dword [ebp - 0xb88], ecx
mov edx, dword [ebp - 0x664]
mov eax, dword [edx]
add eax, 1
mov ecx, dword [ebp - 0x664]
mov dword [ecx], eax
jmp 0x405011
mov edx, dword [ebp - 0x664]
push edx
mov eax, dword [ebp - 0x408]
push eax
call fcn.00407972
add esp, 8
mov dword [ebp - 0xb88], eax
mov dword [ebp - 0x3fc], 0xb
jmp 0x404eef
mov ecx, dword [ebp - 0x664]
push ecx
call fcn.00407494
add esp, 4
mov edx, dword [0x411350]
sub edx, 1
cmp dword [ebp - 0x534], edx
jne 0x405252
push 0x413e7c
lea eax, [ebp - 0xa58]
push eax
call fcn.00407650
add esp, 8
push 0x22
call fcn.00405829
add esp, 4
push eax
lea ecx, [ebp - 0xa58]
push ecx
push 0x22
call fcn.00405829
add esp, 4
push eax
push 0x417a78
push 0x22
call fcn.00405829
add esp, 4
push eax
lea edx, [ebp - 0xa58]
push edx
push 0x22
call fcn.00405829
add esp, 4
push eax
push 0x417a5c
push str._s_s_s_s_s_s_s_s
lea eax, [ebp - 0x3e8]
push eax
call fcn.004075f6
add esp, 0x28
lea ecx, [ebp - 0x3e8]
push ecx
call fcn.00407560
add esp, 4
lea edx, [ebp - 0x3e8]
push edx
mov eax, dword [ebp - 0x534]
imul eax, eax, 0x3e8
add eax, 0x586600
push eax
call fcn.00407650
add esp, 8
push 0x410324
lea ecx, [ebp - 0xa58]
push ecx
call fcn.0040754d
add esp, 8
mov dword [ebp - 0x664], eax
cmp dword [ebp - 0x664], 0
je 0x405252
mov dword [0x417a1c], 0
mov dword [ebp - 0x640], 1
jmp 0x40512c
mov edx, dword [ebp - 0x640]
add edx, 1
mov dword [ebp - 0x640], edx
mov eax, dword [ebp - 0x410]
sub eax, dword [ebp - 0x400]
add eax, 1
cmp dword [ebp - 0x640], eax
jge 0x405243
mov ecx, dword [ebp - 0x64c]
mov edx, dword [ecx + 4]
sub edx, 1
mov eax, dword [ebp - 0x64c]
mov dword [eax + 4], edx
mov ecx, dword [ebp - 0x64c]
cmp dword [ecx + 4], 0
jl 0x405194
mov edx, dword [ebp - 0x64c]
mov eax, dword [edx]
movsx ecx, byte [eax]
and ecx, 0xff
mov dword [ebp - 0xb8c], ecx
mov edx, dword [ebp - 0x64c]
mov eax, dword [edx]
add eax, 1
mov ecx, dword [ebp - 0x64c]
mov dword [ecx], eax
jmp 0x4051a9
mov edx, dword [ebp - 0x64c]
push edx
call fcn.004070f3
add esp, 4
mov dword [ebp - 0xb8c], eax
mov eax, dword [ebp - 0xb8c]
mov dword [ebp - 0x408], eax
mov ecx, dword [ebp - 0x408]
push ecx
call fcn.00405287
add esp, 4
mov dword [ebp - 0x408], eax
mov edx, dword [ebp - 0x664]
mov eax, dword [edx + 4]
sub eax, 1
mov ecx, dword [ebp - 0x664]
mov dword [ecx + 4], eax
mov edx, dword [ebp - 0x664]
cmp dword [edx + 4], 0
jl 0x405222
mov eax, dword [ebp - 0x664]
mov ecx, dword [eax]
mov dl, byte [ebp - 0x408]
mov byte [ecx], dl
movsx eax, byte [ebp - 0x408]
and eax, 0xff
mov dword [ebp - 0xb90], eax
mov ecx, dword [ebp - 0x664]
mov edx, dword [ecx]
add edx, 1
mov eax, dword [ebp - 0x664]
mov dword [eax], edx
jmp 0x40523e
mov ecx, dword [ebp - 0x664]
push ecx
mov edx, dword [ebp - 0x408]
push edx
call fcn.00407972
add esp, 8
mov dword [ebp - 0xb90], eax
jmp 0x40511d
mov eax, dword [ebp - 0x664]
push eax
call fcn.00407494
add esp, 4
jmp 0x4046f5
cmp dword [ebp - 0x40c], 0x4c4b40
jbe 0x405272
lea ecx, [ebp - 0x648]
push ecx
call fcn.00407560
add esp, 4
mov edx, dword [ebp - 0x64c]
push edx
call fcn.00407494
add esp, 4
pop edi
pop esi
mov esp, ebp
pop ebp
ret