Function at 0x402680
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xb80
push esi
push edi
mov al, byte [0x41be44]
mov byte [ebp - 0xb50], al
mov ecx, 0x40
xor eax, eax
lea edi, [ebp - 0xb4f]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov dword [ebp - 0x51c], 0
mov cl, byte [0x41be48]
mov byte [ebp - 0x514], cl
mov ecx, 0x40
xor eax, eax
lea edi, [ebp - 0x513]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov dword [ebp - 0x630], 0
mov dword [ebp - 0x638], 0
mov dword [ebp - 0x3f8], 0
mov dword [ebp - 0xa48], 0
mov dword [ebp - 0x408], 0
mov dword [ebp - 0x404], 0
mov dword [ebp - 0xa4c], 0
mov dword [ebp - 0x650], 0
mov dword [ebp - 0x634], 0
mov dword [ebp - 0x3f0], 0
mov dword [ebp - 0x3ec], 0
mov dword [ebp - 0x658], 0xfffffffe
mov dl, byte [0x41be4c]
mov byte [ebp - 0x62c], dl
mov ecx, 0x40
xor eax, eax
lea edi, [ebp - 0x62b]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov al, byte [0x41be50]
mov byte [ebp - 0xa44], al
mov ecx, 0xf9
xor eax, eax
lea edi, [ebp - 0xa43]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov cl, byte [0x41be54]
mov byte [ebp - 0x3e8], cl
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 dl, byte [0x41be58]
mov byte [ebp - 0x528], dl
xor eax, eax
mov dword [ebp - 0x527], eax
mov dword [ebp - 0x523], eax
mov byte [ebp - 0x51f], al
mov cl, byte [0x41be5c]
mov byte [ebp - 0x64c], cl
xor edx, edx
mov dword [ebp - 0x64b], edx
mov dword [ebp - 0x647], edx
mov byte [ebp - 0x643], dl
mov dword [ebp - 0x3f4], 0
mov dword [ebp - 0x410], 0
mov dword [ebp - 0x400], 0
mov dword [ebp - 0x3fc], 0
mov dword [ebp - 0x518], 0
mov dword [ebp - 0x40c], 0
mov dword [ebp - 0x65c], 0
mov dword [ebp - 0x640], 0
mov dword [ebp - 0x400], 0
mov dword [ebp - 0x410], 2
push 0x41410c
push 0x4153e0
push str._s_s
lea eax, [ebp - 0x62c]
push eax
call fcn.0040b4e0
add esp, 0x10
push 0x414118
push 1
call fcn.00403d1a
add esp, 4
push eax
call fcn.0040bd6d
add esp, 8
mov dword [ebp - 0x63c], eax
cmp dword [ebp - 0x63c], 0
jne 0x4028a3
push str.Error_bdembed1____Quiting
push 0x414138
call fcn.0040bd1c
add esp, 8
push 1
call fcn.0040bc47
push 2
push 0
mov ecx, dword [ebp - 0x63c]
push ecx
call fcn.0040bb8e
add esp, 0xc
mov edx, dword [ebp - 0x63c]
push edx
call fcn.0040ba36
add esp, 4
mov esi, eax
push 0x41b8bc
call fcn.0040b9ab
add esp, 4
sub esi, eax
mov dword [0x41b8cc], esi
push 2
mov eax, dword [0x41b8cc]
neg eax
mov ecx, dword [0x4154e4]
lea edx, [eax + ecx - 0xc]
push edx
mov eax, dword [ebp - 0x63c]
push eax
call fcn.0040bb8e
add esp, 0xc
mov ecx, dword [ebp - 0x63c]
push ecx
push 0xd
lea edx, [ebp - 0x514]
push edx
call fcn.0040b954
add esp, 0xc
mov eax, dword [ebp - 0x658]
push eax
lea ecx, [ebp - 0x514]
push ecx
call fcn.004038a9
add esp, 8
push eax
call fcn.00403a64
add esp, 4
mov dword [ebp - 0x51c], eax
push 2
mov edx, dword [ebp - 0x51c]
mov eax, dword [0x41b8cc]
lea ecx, [eax + edx + 0xc]
imul ecx, ecx, 0xffffffff
add ecx, dword [0x4154e4]
push ecx
mov edx, dword [ebp - 0x63c]
push edx
call fcn.0040bb8e
add esp, 0xc
mov eax, dword [ebp - 0x63c]
push eax
push 6
lea ecx, [ebp - 0x514]
push ecx
call fcn.0040b954
add esp, 0xc
mov edx, dword [ebp - 0x658]
push edx
lea eax, [ebp - 0x514]
push eax
call fcn.004038a9
add esp, 8
push eax
call fcn.00403a64
add esp, 4
mov dword [0x4154f4], eax
mov ecx, dword [ebp - 0x63c]
push ecx
push 6
lea edx, [ebp - 0x514]
push edx
call fcn.0040b954
add esp, 0xc
mov eax, dword [ebp - 0x658]
push eax
lea ecx, [ebp - 0x514]
push ecx
call fcn.004038a9
add esp, 8
push eax
lea edx, [ebp - 0x528]
push edx
call fcn.0040b3f0
add esp, 8
mov dword [ebp - 0x640], 0
mov dword [ebp - 0x65c], 0
push 0x41b8f8
lea eax, [ebp - 0x528]
push eax
call fcn.0040b8d0
add esp, 8
mov dword [ebp - 0x65c], eax
cmp dword [ebp - 0x65c], 0
jne 0x402a21
mov dword [ebp - 0x640], 1
push 0x41b920
lea ecx, [ebp - 0x528]
push ecx
call fcn.0040b8d0
add esp, 8
mov dword [ebp - 0x65c], eax
cmp dword [ebp - 0x65c], 0
jne 0x402a4e
mov dword [ebp - 0x640], 1
cmp dword [ebp - 0x640], 0
jne 0x402a5c
call fcn.00407d43
push 0x41413c
push 0x41b958
call fcn.0040b3f0
add esp, 8
mov dword [ebp - 0x65c], 0
mov dword [0x41b8ac], 0
push 0x41be60
push 0x41b948
call fcn.0040b3f0
add esp, 8
push 0x41be64
lea edx, [ebp - 0x64c]
push edx
call fcn.0040b3f0
add esp, 8
push 0x41b958
call fcn.0040b540
add esp, 4
mov dword [ebp - 0x3f4], eax
mov dword [ebp - 0x638], 1
jmp 0x402ad6
mov eax, dword [ebp - 0x638]
add eax, 1
mov dword [ebp - 0x638], eax
mov ecx, dword [ebp - 0x3f4]
add ecx, 1
cmp dword [ebp - 0x638], ecx
jge 0x402b4d
push 1
mov edx, dword [ebp - 0x638]
push edx
push 0x41b958
call fcn.00403df6
add esp, 0xc
push eax
call fcn.00403d92
add esp, 4
push eax
call fcn.00403794
add esp, 4
mov dword [ebp - 0x400], eax
mov al, byte [ebp - 0x400]
push eax
call fcn.00403d36
add esp, 4
push eax
lea ecx, [ebp - 0x64c]
push ecx
call fcn.0040b3f0
add esp, 8
lea edx, [ebp - 0x64c]
push edx
push 0x41b948
call fcn.0040b400
add esp, 8
jmp 0x402ac7
push 0x41b948
call fcn.0040400a
add esp, 4
push eax
push 0x41b964
call fcn.0040b3f0
add esp, 8
push 0x41b964
call fcn.0040b540
add esp, 4
mov dword [ebp - 0x3f4], eax
cmp dword [ebp - 0x3f4], 1
jle 0x402b89
call fcn.004041dd
mov dword [0x41b8ac], 0
push 0x41b8bc
call fcn.0040b9ab
add esp, 4
mov dword [ebp - 0x3f0], eax
mov eax, dword [ebp - 0x63c]
push eax
push 2
lea ecx, [ebp - 0x514]
push ecx
call fcn.0040b954
add esp, 0xc
mov edx, dword [ebp - 0x658]
push edx
lea eax, [ebp - 0x514]
push eax
call fcn.004038a9
add esp, 8
push eax
call fcn.00403d92
add esp, 4
mov dword [0x4154e8], eax
mov ecx, dword [ebp - 0x63c]
push ecx
push 2
lea edx, [ebp - 0x514]
push edx
call fcn.0040b954
add esp, 0xc
mov eax, dword [ebp - 0x658]
push eax
lea ecx, [ebp - 0x514]
push ecx
call fcn.004038a9
add esp, 8
push eax
call fcn.00403d92
add esp, 4
mov dword [0x4154ec], eax
mov dword [ebp - 0x630], 0
jmp 0x402c39
mov edx, dword [ebp - 0x630]
add edx, 1
mov dword [ebp - 0x630], edx
mov eax, dword [ebp - 0x630]
cmp eax, dword [0x4154f4]
jge 0x40377f
push 2
mov ecx, dword [0x41b8cc]
add ecx, dword [ebp - 0x51c]
mov edx, dword [ebp - 0x630]
imul edx, edx, 0x18
sub ecx, edx
imul ecx, ecx, 0xffffffff
add ecx, dword [0x4154e4]
push ecx
mov eax, dword [ebp - 0x63c]
push eax
call fcn.0040bb8e
add esp, 0xc
mov ecx, dword [ebp - 0x63c]
push ecx
push 0xd
lea edx, [ebp - 0x514]
push edx
call fcn.0040b954
add esp, 0xc
mov eax, dword [ebp - 0x658]
push eax
lea ecx, [ebp - 0x514]
push ecx
call fcn.004038a9
add esp, 8
push eax
call fcn.00403a64
add esp, 4
mov dword [ebp - 0xa48], eax
mov edx, dword [ebp - 0x63c]
push edx
push 0xc
lea eax, [ebp - 0x514]
push eax
call fcn.0040b954
add esp, 0xc
mov ecx, dword [ebp - 0x658]
push ecx
lea edx, [ebp - 0x514]
push edx
call fcn.004038a9
add esp, 8
push eax
call fcn.00403a64
add esp, 4
mov dword [ebp - 0x408], eax
mov eax, dword [ebp - 0x63c]
mov ecx, dword [eax + 4]
sub ecx, 1
mov edx, dword [ebp - 0x63c]
mov dword [edx + 4], ecx
mov eax, dword [ebp - 0x63c]
cmp dword [eax + 4], 0
jl 0x402d43
mov ecx, dword [ebp - 0x63c]
mov edx, dword [ecx]
movsx eax, byte [edx]
and eax, 0xff
mov dword [ebp - 0xb54], eax
mov ecx, dword [ebp - 0x63c]
mov edx, dword [ecx]
add edx, 1
mov eax, dword [ebp - 0x63c]
mov dword [eax], edx
jmp 0x402d58
mov ecx, dword [ebp - 0x63c]
push ecx
call fcn.0040b7ed
add esp, 4
mov dword [ebp - 0xb54], eax
mov edx, dword [ebp - 0xb54]
add edx, dword [ebp - 0x658]
mov dword [ebp - 0x3f8], edx
cmp dword [ebp - 0x3f8], 0xff
jle 0x402d87
mov eax, dword [ebp - 0x3f8]
sub eax, 0x100
mov dword [ebp - 0x3f8], eax
cmp dword [ebp - 0x3f8], 0
jge 0x402da2
mov ecx, dword [ebp - 0x3f8]
add ecx, 0x100
mov dword [ebp - 0x3f8], ecx
push 2
mov edx, dword [ebp - 0x51c]
mov eax, dword [0x41b8cc]
lea ecx, [eax + edx + 0xc]
sub ecx, dword [ebp - 0xa48]
imul ecx, ecx, 0xffffffff
add ecx, dword [0x4154e4]
push ecx
mov edx, dword [ebp - 0x63c]
push edx
call fcn.0040bb8e
add esp, 0xc
mov eax, dword [ebp - 0x63c]
push eax
mov ecx, dword [ebp - 0x3f8]
add ecx, 1
push ecx
lea edx, [ebp - 0x514]
push edx
call fcn.0040b954
add esp, 0xc
mov eax, dword [ebp - 0x658]
push eax
lea ecx, [ebp - 0x514]
push ecx
call fcn.004038a9
add esp, 8
push eax
lea edx, [ebp - 0xb50]
push edx
call fcn.0040b3f0
add esp, 8
lea eax, [ebp - 0x62c]
push eax
lea ecx, [ebp - 0xa44]
push ecx
call fcn.0040b3f0
add esp, 8
lea edx, [ebp - 0xb50]
push edx
lea eax, [ebp - 0xa44]
push eax
call fcn.0040b400
add esp, 8
push 0x41be68
mov ecx, dword [ebp - 0x630]
imul ecx, ecx, 0x3e8
add ecx, 0x58a4c0
push ecx
call fcn.0040b3f0
add esp, 8
mov edx, dword [ebp - 0x408]
sub edx, dword [ebp - 0x3f8]
test edx, edx
jle 0x40377a
mov eax, dword [0x4154f4]
sub eax, 2
cmp dword [ebp - 0x630], eax
jge 0x40331f
cmp dword [0x4154e8], 1
jne 0x402f92
push 0
push 1
push 0x18
mov ecx, dword [0xf13b40]
push ecx
call fcn.0040b213
add esp, 0x10
push 0x414148
call fcn.0040bd1c
add esp, 4
lea edx, [ebp - 0xb50]
push edx
call fcn.0040bd1c
add esp, 4
mov eax, dword [ebp - 0x408]
sub eax, dword [ebp - 0x3f8]
mov dword [ebp - 0xb58], eax
fild dword [ebp - 0xb58]
sub esp, 8
fstp qword [esp]
call fcn.00403daf
add esp, 8
push eax
call fcn.0040bd1c
add esp, 4
push str._bytes
call fcn.0040bd1c
add esp, 4
push 0x414154
call fcn.0040bd1c
add esp, 4
mov ecx, dword [ebp - 0x630]
add ecx, 1
mov dword [ebp - 0xb5c], ecx
fild dword [ebp - 0xb5c]
sub esp, 8
fstp qword [esp]
call fcn.00403daf
add esp, 8
push eax
call fcn.0040bd1c
add esp, 4
push 0x414158
call fcn.0040bd1c
add esp, 4
mov edx, dword [0x4154f4]
sub edx, 2
mov dword [ebp - 0xb60], edx
fild dword [ebp - 0xb60]
sub esp, 8
fstp qword [esp]
call fcn.00403daf
add esp, 8
push eax
call fcn.0040bd1c
add esp, 4
push 0x41415c
call fcn.0040bd1c
add esp, 4
push 0x414160
call fcn.0040bd1c
add esp, 4
push 0x22
call fcn.00403d36
add esp, 4
push eax
lea eax, [ebp - 0xa44]
push eax
push 0x22
call fcn.00403d36
add esp, 4
push eax
push 0x41b9ac
push 0x22
call fcn.00403d36
add esp, 4
push eax
lea ecx, [ebp - 0xa44]
push ecx
push 0x22
call fcn.00403d36
add esp, 4
push eax
push 0x41b990
push 0x414164
lea edx, [ebp - 0x3e8]
push edx
call fcn.0040b4e0
add esp, 0x28
lea eax, [ebp - 0x3e8]
push eax
call fcn.0040b350
add esp, 4
lea ecx, [ebp - 0x3e8]
push ecx
mov edx, dword [ebp - 0x630]
imul edx, edx, 0x3e8
add edx, 0x58a4c0
push edx
call fcn.0040b3f0
add esp, 8
push 0x414178
lea eax, [ebp - 0xa44]
push eax
call fcn.0040bd6d
add esp, 8
mov dword [ebp - 0x654], eax
cmp dword [ebp - 0x654], 0
je 0x40331f
mov dword [0x41b8ac], 0
mov dword [ebp - 0x638], 1
jmp 0x403067
mov ecx, dword [ebp - 0x638]
add ecx, 1
mov dword [ebp - 0x638], ecx
mov edx, dword [ebp - 0x408]
sub edx, dword [ebp - 0x3f8]
add edx, 1
cmp dword [ebp - 0x638], edx
jge 0x403303
mov eax, dword [ebp - 0x63c]
mov ecx, dword [eax + 4]
sub ecx, 1
mov edx, dword [ebp - 0x63c]
mov dword [edx + 4], ecx
mov eax, dword [ebp - 0x63c]
cmp dword [eax + 4], 0
jl 0x4030ce
mov ecx, dword [ebp - 0x63c]
mov edx, dword [ecx]
movsx eax, byte [edx]
and eax, 0xff
mov dword [ebp - 0xb64], eax
mov ecx, dword [ebp - 0x63c]
mov edx, dword [ecx]
add edx, 1
mov eax, dword [ebp - 0x63c]
mov dword [eax], edx
jmp 0x4030e3
mov ecx, dword [ebp - 0x63c]
push ecx
call fcn.0040b7ed
add esp, 4
mov dword [ebp - 0xb64], eax
mov edx, dword [ebp - 0xb64]
mov dword [ebp - 0x400], edx
mov eax, dword [ebp - 0x400]
push eax
call fcn.00403794
add esp, 4
mov dword [ebp - 0x400], eax
mov ecx, dword [ebp - 0x654]
mov edx, dword [ecx + 4]
sub edx, 1
mov eax, dword [ebp - 0x654]
mov dword [eax + 4], edx
mov ecx, dword [ebp - 0x654]
cmp dword [ecx + 4], 0
jl 0x40315d
mov edx, dword [ebp - 0x654]
mov eax, dword [edx]
mov cl, byte [ebp - 0x400]
mov byte [eax], cl
movsx edx, byte [ebp - 0x400]
and edx, 0xff
mov dword [ebp - 0xb68], edx
mov eax, dword [ebp - 0x654]
mov ecx, dword [eax]
add ecx, 1
mov edx, dword [ebp - 0x654]
mov dword [edx], ecx
jmp 0x403179
mov eax, dword [ebp - 0x654]
push eax
mov ecx, dword [ebp - 0x400]
push ecx
call fcn.0040b6d8
add esp, 8
mov dword [ebp - 0xb68], eax
mov edx, dword [ebp - 0x404]
add edx, 1
mov dword [ebp - 0x404], edx
mov eax, dword [ebp - 0xa4c]
add eax, 1
mov dword [ebp - 0xa4c], eax
cmp dword [ebp - 0x3f0], 0x1312d00
jbe 0x4032fe
cmp dword [ebp - 0x404], 0x4c4b40
jbe 0x4032fe
push 0
push 0x33
push 0xd
mov ecx, dword [0xf13b40]
push ecx
call fcn.0040b213
add esp, 0x10
push 0x41417c
call fcn.0040bd1c
add esp, 4
mov eax, dword [ebp - 0x3f0]
xor edx, edx
mov ecx, 0x64
div ecx
mov ecx, eax
mov eax, dword [ebp - 0xa4c]
xor edx, edx
div ecx
mov dword [ebp - 0x650], eax
mov dword [ebp - 0x404], 0
mov edx, dword [ebp - 0xa4c]
cmp edx, dword [ebp - 0x3f0]
jb 0x403221
mov eax, dword [ebp - 0x3f0]
sub eax, 1
mov dword [ebp - 0xa4c], eax
push 0
push 0x21
push 0xc
mov ecx, dword [0xf13b40]
push ecx
call fcn.0040b213
add esp, 0x10
push str.Loading__
call fcn.0040bd1c
add esp, 4
mov edx, dword [ebp - 0x650]
mov dword [ebp - 0xb70], edx
mov dword [ebp - 0xb6c], 0
fild qword [ebp - 0xb70]
sub esp, 8
fstp qword [esp]
call fcn.00403daf
add esp, 8
push eax
call fcn.0040bd1c
add esp, 4
push str.____
call fcn.0040bd1c
add esp, 4
push 0
push 0x1e
push 0xd
mov eax, dword [0xf13b40]
push eax
call fcn.0040b213
add esp, 0x10
push 0x414194
call fcn.0040bd1c
add esp, 4
mov dword [ebp - 0x634], 0
jmp 0x4032bf
mov ecx, dword [ebp - 0x634]
add ecx, 1
mov dword [ebp - 0x634], ecx
mov edx, dword [ebp - 0x634]
cmp edx, dword [ebp - 0x650]
jae 0x4032fe
mov eax, dword [ebp - 0x3ec]
add eax, 1
mov dword [ebp - 0x3ec], eax
cmp dword [ebp - 0x3ec], 4
jbe 0x4032fc
push 0x414198
call fcn.0040bd1c
add esp, 4
mov dword [ebp - 0x3ec], 0
jmp 0x4032b0
jmp 0x403058
mov ecx, dword [ebp - 0x654]
push ecx
call fcn.0040b682
add esp, 4
push 0x41419c
call fcn.0040b350
add esp, 4
mov edx, dword [0x4154f4]
sub edx, 2
cmp dword [ebp - 0x630], edx
jne 0x403557
push 0x417c08
lea eax, [ebp - 0xa44]
push eax
call fcn.0040b3f0
add esp, 8
push 0x22
call fcn.00403d36
add esp, 4
push eax
lea ecx, [ebp - 0xa44]
push ecx
push 0x22
call fcn.00403d36
add esp, 4
push eax
push 0x41b9ac
push 0x22
call fcn.00403d36
add esp, 4
push eax
lea edx, [ebp - 0xa44]
push edx
push 0x22
call fcn.00403d36
add esp, 4
push eax
push 0x41b990
push 0x4141a0
lea eax, [ebp - 0x3e8]
push eax
call fcn.0040b4e0
add esp, 0x28
lea ecx, [ebp - 0x3e8]
push ecx
call fcn.0040b350
add esp, 4
lea edx, [ebp - 0x3e8]
push edx
mov eax, dword [ebp - 0x630]
imul eax, eax, 0x3e8
add eax, 0x58a4c0
push eax
call fcn.0040b3f0
add esp, 8
push 0x4141b4
lea ecx, [ebp - 0xa44]
push ecx
call fcn.0040bd6d
add esp, 8
mov dword [ebp - 0x654], eax
cmp dword [ebp - 0x654], 0
je 0x403557
mov edx, dword [ebp - 0x654]
push edx
push 0x417e10
call fcn.0040b63f
add esp, 8
mov dword [0x41b8ac], 0
mov dword [ebp - 0x638], 1
jmp 0x403430
mov eax, dword [ebp - 0x638]
add eax, 1
mov dword [ebp - 0x638], eax
mov ecx, dword [ebp - 0x408]
sub ecx, dword [ebp - 0x3f8]
add ecx, 1
cmp dword [ebp - 0x638], ecx
jge 0x403548
mov edx, dword [ebp - 0x63c]
mov eax, dword [edx + 4]
sub eax, 1
mov ecx, dword [ebp - 0x63c]
mov dword [ecx + 4], eax
mov edx, dword [ebp - 0x63c]
cmp dword [edx + 4], 0
jl 0x403498
mov eax, dword [ebp - 0x63c]
mov ecx, dword [eax]
movsx edx, byte [ecx]
and edx, 0xff
mov dword [ebp - 0xb74], edx
mov eax, dword [ebp - 0x63c]
mov ecx, dword [eax]
add ecx, 1
mov edx, dword [ebp - 0x63c]
mov dword [edx], ecx
jmp 0x4034ad
mov eax, dword [ebp - 0x63c]
push eax
call fcn.0040b7ed
add esp, 4
mov dword [ebp - 0xb74], eax
mov ecx, dword [ebp - 0xb74]
mov dword [ebp - 0x400], ecx
mov edx, dword [ebp - 0x400]
push edx
call fcn.00403794
add esp, 4
mov dword [ebp - 0x400], eax
mov eax, dword [ebp - 0x654]
mov ecx, dword [eax + 4]
sub ecx, 1
mov edx, dword [ebp - 0x654]
mov dword [edx + 4], ecx
mov eax, dword [ebp - 0x654]
cmp dword [eax + 4], 0
jl 0x403527
mov ecx, dword [ebp - 0x654]
mov edx, dword [ecx]
mov al, byte [ebp - 0x400]
mov byte [edx], al
movsx ecx, byte [ebp - 0x400]
and ecx, 0xff
mov dword [ebp - 0xb78], ecx
mov edx, dword [ebp - 0x654]
mov eax, dword [edx]
add eax, 1
mov ecx, dword [ebp - 0x654]
mov dword [ecx], eax
jmp 0x403543
mov edx, dword [ebp - 0x654]
push edx
mov eax, dword [ebp - 0x400]
push eax
call fcn.0040b6d8
add esp, 8
mov dword [ebp - 0xb78], eax
jmp 0x403421
mov ecx, dword [ebp - 0x654]
push ecx
call fcn.0040b682
add esp, 4
mov edx, dword [0x4154f4]
sub edx, 1
cmp dword [ebp - 0x630], edx
jne 0x40377a
push 0x417d0c
lea eax, [ebp - 0xa44]
push eax
call fcn.0040b3f0
add esp, 8
push 0x22
call fcn.00403d36
add esp, 4
push eax
lea ecx, [ebp - 0xa44]
push ecx
push 0x22
call fcn.00403d36
add esp, 4
push eax
push 0x41b9ac
push 0x22
call fcn.00403d36
add esp, 4
push eax
lea edx, [ebp - 0xa44]
push edx
push 0x22
call fcn.00403d36
add esp, 4
push eax
push 0x41b990
push str._s_s_s_s_s_s_s_s
lea eax, [ebp - 0x3e8]
push eax
call fcn.0040b4e0
add esp, 0x28
lea ecx, [ebp - 0x3e8]
push ecx
call fcn.0040b350
add esp, 4
lea edx, [ebp - 0x3e8]
push edx
mov eax, dword [ebp - 0x630]
imul eax, eax, 0x3e8
add eax, 0x58a4c0
push eax
call fcn.0040b3f0
add esp, 8
push 0x4141cc
lea ecx, [ebp - 0xa44]
push ecx
call fcn.0040bd6d
add esp, 8
mov dword [ebp - 0x654], eax
cmp dword [ebp - 0x654], 0
je 0x40377a
mov dword [0x41b8ac], 0
mov dword [ebp - 0x638], 1
jmp 0x403654
mov edx, dword [ebp - 0x638]
add edx, 1
mov dword [ebp - 0x638], edx
mov eax, dword [ebp - 0x408]
sub eax, dword [ebp - 0x3f8]
add eax, 1
cmp dword [ebp - 0x638], eax
jge 0x40376b
mov ecx, dword [ebp - 0x63c]
mov edx, dword [ecx + 4]
sub edx, 1
mov eax, dword [ebp - 0x63c]
mov dword [eax + 4], edx
mov ecx, dword [ebp - 0x63c]
cmp dword [ecx + 4], 0
jl 0x4036bc
mov edx, dword [ebp - 0x63c]
mov eax, dword [edx]
movsx ecx, byte [eax]
and ecx, 0xff
mov dword [ebp - 0xb7c], ecx
mov edx, dword [ebp - 0x63c]
mov eax, dword [edx]
add eax, 1
mov ecx, dword [ebp - 0x63c]
mov dword [ecx], eax
jmp 0x4036d1
mov edx, dword [ebp - 0x63c]
push edx
call fcn.0040b7ed
add esp, 4
mov dword [ebp - 0xb7c], eax
mov eax, dword [ebp - 0xb7c]
mov dword [ebp - 0x400], eax
mov ecx, dword [ebp - 0x400]
push ecx
call fcn.00403794
add esp, 4
mov dword [ebp - 0x400], eax
mov edx, dword [ebp - 0x654]
mov eax, dword [edx + 4]
sub eax, 1
mov ecx, dword [ebp - 0x654]
mov dword [ecx + 4], eax
mov edx, dword [ebp - 0x654]
cmp dword [edx + 4], 0
jl 0x40374a
mov eax, dword [ebp - 0x654]
mov ecx, dword [eax]
mov dl, byte [ebp - 0x400]
mov byte [ecx], dl
movsx eax, byte [ebp - 0x400]
and eax, 0xff
mov dword [ebp - 0xb80], eax
mov ecx, dword [ebp - 0x654]
mov edx, dword [ecx]
add edx, 1
mov eax, dword [ebp - 0x654]
mov dword [eax], edx
jmp 0x403766
mov ecx, dword [ebp - 0x654]
push ecx
mov edx, dword [ebp - 0x400]
push edx
call fcn.0040b6d8
add esp, 8
mov dword [ebp - 0xb80], eax
jmp 0x403645
mov eax, dword [ebp - 0x654]
push eax
call fcn.0040b682
add esp, 4
jmp 0x402c2a
mov ecx, dword [ebp - 0x63c]
push ecx
call fcn.0040b682
add esp, 4
pop edi
pop esi
mov esp, ebp
pop ebp
ret