Function at 0x401e62
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xb8c
push esi
push edi
mov al, byte [0x417f48]
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 [0x417f4c]
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 [0x417f50]
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 [0x417f54]
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 [0x417f58]
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 [0x417f5c]
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 [0x417f60]
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 0x41115c
push 0x412110
push 0x411160
lea eax, [ebp - 0x62c]
push eax
call fcn.00407ef0
add esp, 0x10
push 0x411168
push 1
call fcn.004036c9
add esp, 4
push eax
call fcn.0040877d
add esp, 8
mov dword [ebp - 0x63c], eax
cmp dword [ebp - 0x63c], 0
jne 0x402085
push str.Error_bdembed1____Quiting
push 0x411188
call fcn.0040872c
add esp, 8
push 1
call fcn.00408657
push 2
push 0
mov ecx, dword [ebp - 0x63c]
push ecx
call fcn.0040859e
add esp, 0xc
mov edx, dword [ebp - 0x63c]
push edx
call fcn.00408446
add esp, 4
mov esi, eax
push 0x417a34
call fcn.004083bb
add esp, 4
sub esi, eax
mov dword [0x417a44], esi
push 2
mov eax, dword [0x417a44]
neg eax
mov ecx, dword [0x412214]
lea edx, [eax + ecx - 0xc]
push edx
mov eax, dword [ebp - 0x63c]
push eax
call fcn.0040859e
add esp, 0xc
mov ecx, dword [ebp - 0x63c]
push ecx
push 0xd
lea edx, [ebp - 0x514]
push edx
call fcn.00408364
add esp, 0xc
mov eax, dword [ebp - 0x658]
push eax
lea ecx, [ebp - 0x514]
push ecx
call fcn.00403258
add esp, 8
push eax
call fcn.00403413
add esp, 4
mov dword [ebp - 0x51c], eax
push 2
mov edx, dword [ebp - 0x51c]
mov eax, dword [0x417a44]
lea ecx, [eax + edx + 0xc]
imul ecx, ecx, 0xffffffff
add ecx, dword [0x412214]
push ecx
mov edx, dword [ebp - 0x63c]
push edx
call fcn.0040859e
add esp, 0xc
mov eax, dword [ebp - 0x63c]
push eax
push 6
lea ecx, [ebp - 0x514]
push ecx
call fcn.00408364
add esp, 0xc
mov edx, dword [ebp - 0x658]
push edx
lea eax, [ebp - 0x514]
push eax
call fcn.00403258
add esp, 8
push eax
call fcn.00403413
add esp, 4
mov dword [0x412224], eax
mov ecx, dword [ebp - 0x63c]
push ecx
push 6
lea edx, [ebp - 0x514]
push edx
call fcn.00408364
add esp, 0xc
mov eax, dword [ebp - 0x658]
push eax
lea ecx, [ebp - 0x514]
push ecx
call fcn.00403258
add esp, 8
push eax
lea edx, [ebp - 0x528]
push edx
call fcn.00407e00
add esp, 8
mov dword [ebp - 0x640], 0
mov dword [ebp - 0x65c], 0
push 0x417a70
lea eax, [ebp - 0x528]
push eax
call fcn.004082e0
add esp, 8
mov dword [ebp - 0x65c], eax
cmp dword [ebp - 0x65c], 0
jne 0x402203
mov dword [ebp - 0x640], 1
push 0x417a98
lea ecx, [ebp - 0x528]
push ecx
call fcn.004082e0
add esp, 8
mov dword [ebp - 0x65c], eax
cmp dword [ebp - 0x65c], 0
jne 0x402230
mov dword [ebp - 0x640], 1
cmp dword [ebp - 0x640], 0
jne 0x40223e
call fcn.00404520
push 0x41118c
push 0x417ad0
call fcn.00407e00
add esp, 8
mov dword [ebp - 0x65c], 0
mov dword [0x417a24], 0
push 0x417f64
push 0x417ac0
call fcn.00407e00
add esp, 8
push 0x417f68
lea edx, [ebp - 0x64c]
push edx
call fcn.00407e00
add esp, 8
push 0x417ad0
call fcn.00407f50
add esp, 4
mov dword [ebp - 0x3f4], eax
mov dword [ebp - 0x638], 1
jmp 0x4022b8
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 0x40232f
push 1
mov edx, dword [ebp - 0x638]
push edx
push 0x417ad0
call fcn.004037a5
add esp, 0xc
push eax
call fcn.00403741
add esp, 4
push eax
call fcn.00403143
add esp, 4
mov dword [ebp - 0x400], eax
mov al, byte [ebp - 0x400]
push eax
call fcn.004036e5
add esp, 4
push eax
lea ecx, [ebp - 0x64c]
push ecx
call fcn.00407e00
add esp, 8
lea edx, [ebp - 0x64c]
push edx
push 0x417ac0
call fcn.00407e10
add esp, 8
jmp 0x4022a9
push 0x417ac0
call fcn.004039b9
add esp, 4
push eax
push 0x417adc
call fcn.00407e00
add esp, 8
push 0x417adc
call fcn.00407f50
add esp, 4
mov dword [ebp - 0x3f4], eax
cmp dword [ebp - 0x3f4], 1
jle 0x40236b
call fcn.00403b8c
mov dword [0x417a24], 0
push 0x417a34
call fcn.004083bb
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.00408364
add esp, 0xc
mov edx, dword [ebp - 0x658]
push edx
lea eax, [ebp - 0x514]
push eax
call fcn.00403258
add esp, 8
push eax
call fcn.00403741
add esp, 4
mov dword [0x412218], eax
mov ecx, dword [ebp - 0x63c]
push ecx
push 2
lea edx, [ebp - 0x514]
push edx
call fcn.00408364
add esp, 0xc
mov eax, dword [ebp - 0x658]
push eax
lea ecx, [ebp - 0x514]
push ecx
call fcn.00403258
add esp, 8
push eax
call fcn.00403741
add esp, 4
mov dword [0x41221c], eax
mov dword [ebp - 0x630], 0
jmp 0x40241b
mov edx, dword [ebp - 0x630]
add edx, 1
mov dword [ebp - 0x630], edx
mov eax, dword [ebp - 0x630]
cmp eax, dword [0x412224]
jge 0x40312e
push 2
mov ecx, dword [0x417a44]
add ecx, dword [ebp - 0x51c]
mov edx, dword [ebp - 0x630]
imul edx, edx, 0x18
sub ecx, edx
imul ecx, ecx, 0xffffffff
add ecx, dword [0x412214]
push ecx
mov eax, dword [ebp - 0x63c]
push eax
call fcn.0040859e
add esp, 0xc
mov ecx, dword [ebp - 0x63c]
push ecx
push 0xd
lea edx, [ebp - 0x514]
push edx
call fcn.00408364
add esp, 0xc
mov eax, dword [ebp - 0x658]
push eax
lea ecx, [ebp - 0x514]
push ecx
call fcn.00403258
add esp, 8
push eax
call fcn.00403413
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.00408364
add esp, 0xc
mov ecx, dword [ebp - 0x658]
push ecx
lea edx, [ebp - 0x514]
push edx
call fcn.00403258
add esp, 8
push eax
call fcn.00403413
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 0x402525
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 0x40253a
mov ecx, dword [ebp - 0x63c]
push ecx
call fcn.004081fd
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 0x402569
mov eax, dword [ebp - 0x3f8]
sub eax, 0x100
mov dword [ebp - 0x3f8], eax
cmp dword [ebp - 0x3f8], 0
jge 0x402584
mov ecx, dword [ebp - 0x3f8]
add ecx, 0x100
mov dword [ebp - 0x3f8], ecx
push 2
mov edx, dword [ebp - 0x51c]
mov eax, dword [0x417a44]
lea ecx, [eax + edx + 0xc]
sub ecx, dword [ebp - 0xa48]
imul ecx, ecx, 0xffffffff
add ecx, dword [0x412214]
push ecx
mov edx, dword [ebp - 0x63c]
push edx
call fcn.0040859e
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.00408364
add esp, 0xc
mov eax, dword [ebp - 0x658]
push eax
lea ecx, [ebp - 0x514]
push ecx
call fcn.00403258
add esp, 8
push eax
lea edx, [ebp - 0xb50]
push edx
call fcn.00407e00
add esp, 8
lea eax, [ebp - 0x62c]
push eax
lea ecx, [ebp - 0xa44]
push ecx
call fcn.00407e00
add esp, 8
lea edx, [ebp - 0xb50]
push edx
lea eax, [ebp - 0xa44]
push eax
call fcn.00407e10
add esp, 8
push 0x417f6c
mov ecx, dword [ebp - 0x630]
imul ecx, ecx, 0x3e8
add ecx, 0x586580
push ecx
call fcn.00407e00
add esp, 8
mov edx, dword [ebp - 0x408]
sub edx, dword [ebp - 0x3f8]
test edx, edx
jle 0x403129
mov eax, dword [0x412224]
sub eax, 2
cmp dword [ebp - 0x630], eax
jge 0x402b01
cmp dword [0x412218], 1
jne 0x402774
push 0
push 1
push 0x18
mov ecx, dword [0xf0fc00]
push ecx
call fcn.00407c29
add esp, 0x10
push 0x411198
call fcn.0040872c
add esp, 4
lea edx, [ebp - 0xb50]
push edx
call fcn.0040872c
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.0040375e
add esp, 8
push eax
call fcn.0040872c
add esp, 4
push str._bytes
call fcn.0040872c
add esp, 4
push 0x4111a4
call fcn.0040872c
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.0040375e
add esp, 8
push eax
call fcn.0040872c
add esp, 4
push 0x4111a8
call fcn.0040872c
add esp, 4
mov edx, dword [0x412224]
sub edx, 2
mov dword [ebp - 0xb60], edx
fild dword [ebp - 0xb60]
sub esp, 8
fstp qword [esp]
call fcn.0040375e
add esp, 8
push eax
call fcn.0040872c
add esp, 4
push 0x4111ac
call fcn.0040872c
add esp, 4
push 0x4111b0
call fcn.0040872c
add esp, 4
push 0x22
call fcn.004036e5
add esp, 4
push eax
lea eax, [ebp - 0xa44]
push eax
push 0x22
call fcn.004036e5
add esp, 4
push eax
push 0x4111b4
push 0x22
call fcn.004036e5
add esp, 4
push eax
lea ecx, [ebp - 0xa44]
push ecx
push 0x22
call fcn.004036e5
add esp, 4
push eax
push 0x4111bc
push 0x4111c8
lea edx, [ebp - 0x3e8]
push edx
call fcn.00407ef0
add esp, 0x28
lea eax, [ebp - 0x3e8]
push eax
call fcn.00407d66
add esp, 4
lea ecx, [ebp - 0x3e8]
push ecx
mov edx, dword [ebp - 0x630]
imul edx, edx, 0x3e8
add edx, 0x586580
push edx
call fcn.00407e00
add esp, 8
push 0x4111dc
lea eax, [ebp - 0xa44]
push eax
call fcn.0040877d
add esp, 8
mov dword [ebp - 0x654], eax
cmp dword [ebp - 0x654], 0
je 0x402b01
mov dword [0x417a24], 0
mov dword [ebp - 0x638], 1
jmp 0x402849
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 0x402ae5
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 0x4028b0
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 0x4028c5
mov ecx, dword [ebp - 0x63c]
push ecx
call fcn.004081fd
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.00403143
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 0x40293f
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 0x40295b
mov eax, dword [ebp - 0x654]
push eax
mov ecx, dword [ebp - 0x400]
push ecx
call fcn.004080e8
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 0x402ae0
cmp dword [ebp - 0x404], 0x4c4b40
jbe 0x402ae0
push 0
push 0x33
push 0xd
mov ecx, dword [0xf0fc00]
push ecx
call fcn.00407c29
add esp, 0x10
push 0x4111e0
call fcn.0040872c
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 0x402a03
mov eax, dword [ebp - 0x3f0]
sub eax, 1
mov dword [ebp - 0xa4c], eax
push 0
push 0x21
push 0xc
mov ecx, dword [0xf0fc00]
push ecx
call fcn.00407c29
add esp, 0x10
push str.Loading__
call fcn.0040872c
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.0040375e
add esp, 8
push eax
call fcn.0040872c
add esp, 4
push str.____
call fcn.0040872c
add esp, 4
push 0
push 0x1e
push 0xd
mov eax, dword [0xf0fc00]
push eax
call fcn.00407c29
add esp, 0x10
push 0x4111f8
call fcn.0040872c
add esp, 4
mov dword [ebp - 0x634], 0
jmp 0x402aa1
mov ecx, dword [ebp - 0x634]
add ecx, 1
mov dword [ebp - 0x634], ecx
mov edx, dword [ebp - 0x634]
cmp edx, dword [ebp - 0x650]
jae 0x402ae0
mov eax, dword [ebp - 0x3ec]
add eax, 1
mov dword [ebp - 0x3ec], eax
cmp dword [ebp - 0x3ec], 4
jbe 0x402ade
push 0x4111fc
call fcn.0040872c
add esp, 4
mov dword [ebp - 0x3ec], 0
jmp 0x402a92
jmp 0x40283a
mov ecx, dword [ebp - 0x654]
push ecx
call fcn.00408092
add esp, 4
push 0x411200
call fcn.00407d66
add esp, 4
mov edx, dword [0x412224]
sub edx, 2
cmp dword [ebp - 0x630], edx
jne 0x402f05
push 0x414938
lea eax, [ebp - 0xa44]
push eax
call fcn.00407e00
add esp, 8
push 0x22
call fcn.004036e5
add esp, 4
push eax
lea ecx, [ebp - 0xa44]
push ecx
push 0x22
call fcn.004036e5
add esp, 4
push eax
push 0x411204
push 0x22
call fcn.004036e5
add esp, 4
push eax
lea edx, [ebp - 0xa44]
push edx
push 0x22
call fcn.004036e5
add esp, 4
push eax
push 0x41120c
push 0x411218
lea eax, [ebp - 0x3e8]
push eax
call fcn.00407ef0
add esp, 0x28
lea ecx, [ebp - 0x3e8]
push ecx
call fcn.00407d66
add esp, 4
lea edx, [ebp - 0x3e8]
push edx
mov eax, dword [ebp - 0x630]
imul eax, eax, 0x3e8
add eax, 0x586580
push eax
call fcn.00407e00
add esp, 8
push 0x41122c
lea ecx, [ebp - 0xa44]
push ecx
call fcn.0040877d
add esp, 8
mov dword [ebp - 0x654], eax
cmp dword [ebp - 0x654], 0
je 0x402f05
mov edx, dword [ebp - 0x654]
push edx
push 0x414b40
call fcn.0040804f
add esp, 8
mov dword [0x417a24], 0
mov dword [ebp - 0x638], 1
jmp 0x402c12
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 0x402ef6
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 0x402c7a
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 0x402c8f
mov eax, dword [ebp - 0x63c]
push eax
call fcn.004081fd
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.00403143
add esp, 4
mov dword [ebp - 0x400], eax
cmp dword [ebp - 0x400], 0x25
jne 0x402e7c
mov eax, dword [ebp - 0x638]
add eax, 1
mov ecx, dword [ebp - 0x408]
sub ecx, dword [ebp - 0x3f8]
add ecx, 1
cmp eax, ecx
jge 0x402e7a
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 0x402d2a
mov eax, dword [ebp - 0x63c]
mov ecx, dword [eax]
movsx edx, byte [ecx]
and edx, 0xff
mov dword [ebp - 0xb78], edx
mov eax, dword [ebp - 0x63c]
mov ecx, dword [eax]
add ecx, 1
mov edx, dword [ebp - 0x63c]
mov dword [edx], ecx
jmp 0x402d3f
mov eax, dword [ebp - 0x63c]
push eax
call fcn.004081fd
add esp, 4
mov dword [ebp - 0xb78], eax
mov ecx, dword [ebp - 0xb78]
mov dword [ebp - 0x3fc], ecx
mov edx, dword [ebp - 0x3fc]
push edx
call fcn.00403143
add esp, 4
mov dword [ebp - 0x3fc], eax
mov eax, dword [ebp - 0x638]
add eax, 1
mov dword [ebp - 0x638], eax
cmp dword [ebp - 0x3fc], 0x2a
jne 0x402d91
mov ecx, dword [ebp - 0x654]
push ecx
push 0x4135b0
call fcn.0040804f
add esp, 8
jmp 0x402e7a
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 0x402de9
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 - 0xb7c], eax
mov ecx, dword [ebp - 0x654]
mov edx, dword [ecx]
add edx, 1
mov eax, dword [ebp - 0x654]
mov dword [eax], edx
jmp 0x402e05
mov ecx, dword [ebp - 0x654]
push ecx
mov edx, dword [ebp - 0x400]
push edx
call fcn.004080e8
add esp, 8
mov dword [ebp - 0xb7c], 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 0x402e5e
mov ecx, dword [ebp - 0x654]
mov edx, dword [ecx]
mov al, byte [ebp - 0x3fc]
mov byte [edx], al
movsx ecx, byte [ebp - 0x3fc]
and ecx, 0xff
mov dword [ebp - 0xb80], ecx
mov edx, dword [ebp - 0x654]
mov eax, dword [edx]
add eax, 1
mov ecx, dword [ebp - 0x654]
mov dword [ecx], eax
jmp 0x402e7a
mov edx, dword [ebp - 0x654]
push edx
mov eax, dword [ebp - 0x3fc]
push eax
call fcn.004080e8
add esp, 8
mov dword [ebp - 0xb80], eax
jmp 0x402ef1
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 0x402ed5
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 - 0xb84], edx
mov eax, dword [ebp - 0x654]
mov ecx, dword [eax]
add ecx, 1
mov edx, dword [ebp - 0x654]
mov dword [edx], ecx
jmp 0x402ef1
mov eax, dword [ebp - 0x654]
push eax
mov ecx, dword [ebp - 0x400]
push ecx
call fcn.004080e8
add esp, 8
mov dword [ebp - 0xb84], eax
jmp 0x402c03
mov edx, dword [ebp - 0x654]
push edx
call fcn.00408092
add esp, 4
mov eax, dword [0x412224]
sub eax, 1
cmp dword [ebp - 0x630], eax
jne 0x403129
push 0x414a3c
lea ecx, [ebp - 0xa44]
push ecx
call fcn.00407e00
add esp, 8
push 0x22
call fcn.004036e5
add esp, 4
push eax
lea edx, [ebp - 0xa44]
push edx
push 0x22
call fcn.004036e5
add esp, 4
push eax
push str._del
push 0x22
call fcn.004036e5
add esp, 4
push eax
lea eax, [ebp - 0xa44]
push eax
push 0x22
call fcn.004036e5
add esp, 4
push eax
push str.if_exist
push str._s_s_s_s_s_s_s_s
lea ecx, [ebp - 0x3e8]
push ecx
call fcn.00407ef0
add esp, 0x28
lea edx, [ebp - 0x3e8]
push edx
call fcn.00407d66
add esp, 4
lea eax, [ebp - 0x3e8]
push eax
mov ecx, dword [ebp - 0x630]
imul ecx, ecx, 0x3e8
add ecx, 0x586580
push ecx
call fcn.00407e00
add esp, 8
push 0x411258
lea edx, [ebp - 0xa44]
push edx
call fcn.0040877d
add esp, 8
mov dword [ebp - 0x654], eax
cmp dword [ebp - 0x654], 0
je 0x403129
mov dword [0x417a24], 0
mov dword [ebp - 0x638], 1
jmp 0x403002
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 0x40311a
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 0x40306a
mov eax, dword [ebp - 0x63c]
mov ecx, dword [eax]
movsx edx, byte [ecx]
and edx, 0xff
mov dword [ebp - 0xb88], edx
mov eax, dword [ebp - 0x63c]
mov ecx, dword [eax]
add ecx, 1
mov edx, dword [ebp - 0x63c]
mov dword [edx], ecx
jmp 0x40307f
mov eax, dword [ebp - 0x63c]
push eax
call fcn.004081fd
add esp, 4
mov dword [ebp - 0xb88], eax
mov ecx, dword [ebp - 0xb88]
mov dword [ebp - 0x400], ecx
mov edx, dword [ebp - 0x400]
push edx
call fcn.00403143
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 0x4030f9
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 - 0xb8c], ecx
mov edx, dword [ebp - 0x654]
mov eax, dword [edx]
add eax, 1
mov ecx, dword [ebp - 0x654]
mov dword [ecx], eax
jmp 0x403115
mov edx, dword [ebp - 0x654]
push edx
mov eax, dword [ebp - 0x400]
push eax
call fcn.004080e8
add esp, 8
mov dword [ebp - 0xb8c], eax
jmp 0x402ff3
mov ecx, dword [ebp - 0x654]
push ecx
call fcn.00408092
add esp, 4
jmp 0x40240c
mov edx, dword [ebp - 0x63c]
push edx
call fcn.00408092
add esp, 4
pop edi
pop esi
mov esp, ebp
pop ebp
ret