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

Disassembly:
sub esp, 0xd8
mov al, byte [0x8ef61c]
push ebx
xor ebx, ebx
test al, 1
push ebp
push esi
mov esi, dword [sym.imp.WINMM.dll_timeGetTime]
push edi
mov dword [esp + 0x28], ebx
mov byte [esp + 0x12], bl
mov byte [esp + 0x13], bl
mov dword [esp + 0x94], 0x50
mov dword [esp + 0x98], ebx
mov dword [esp + 0x9c], 0xa0
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x68], 0xffffffff
mov dword [esp + 0x2c], ebx
jne 0x4b83c6
or dword [0x8ef61c], 1
call esi
mov dword [0x8ef618], eax
call esi
sub eax, dword [0x8ef618]
mov dword [esp + 0x6c], eax
test byte [0x8ef61c], 1
jne 0x4b83e9
or dword [0x8ef61c], 1
call esi
mov dword [0x8ef618], eax
call esi
jmp 0x4b83f0
push ebx
call fcn.0042e1a0
add esp, 4
cmp eax, ebx
jne 0x4b83f0
mov edx, dword [0x8ccbe8]
push 0xfffffffffffffff6
xor eax, eax
push 0x82
push 0x6e
push str.button_leftArrow.kfm
mov edi, eax
push str.SailLeft
mov ecx, 0xf
mov dword [0x86e35c], ebx
mov dword [0x86e360], ebx
mov word [0x86e330], bx
mov dword [esp + 0x28], ebx
mov dword [esp + 0x64], eax
mov dword [esp + 0x50], edi
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], eax
mov dword [esp + 0x5c], eax
mov dword [esp + 0x60], eax
call fcn.004b1ee0
mov esi, eax
cmp edi, esi
je 0x4b8475
cmp edi, ebx
je 0x4b846a
dec dword [edi + 4]
jne 0x4b846a
mov eax, dword [edi]
push 1
mov ecx, edi
call dword [eax]
cmp esi, ebx
mov dword [esp + 0x3c], esi
je 0x4b8475
inc dword [esi + 4]
mov ebx, dword [0x8ccbe8]
push 0xf
call fcn.004b2080
mov cx, word [0x86e330]
mov edx, dword [0x8ccbe8]
push 0xfffffffffffffff6
movsx eax, cx
shl eax, 1
push 0x82
push 0x21c
inc cx
push str.button_rightArrow.kfm
mov edi, 0x76
mov word [0x86e330], cx
mov ebp, 0x8a
push str.SailRight
mov ecx, 0x10
mov word [eax + 0x86e1a0], 0
mov word [eax + 0x86e010], 0x62
mov word [eax + 0x86de80], di
mov word [eax + 0x86dcf0], di
mov word [eax + 0x86db60], bp
call fcn.004b1ee0
mov esi, eax
mov eax, dword [esp + 0x40]
cmp eax, esi
je 0x4b8514
mov ecx, eax
test ecx, ecx
je 0x4b8509
dec dword [ecx + 4]
jne 0x4b8509
mov edx, dword [ecx]
push 1
call dword [edx]
test esi, esi
mov dword [esp + 0x40], esi
je 0x4b8514
inc dword [esi + 4]
mov ebx, dword [0x8ccbe8]
push 0x10
call fcn.004b2080
mov cx, word [0x86e330]
mov edx, dword [0x8ccbe8]
push 0xfffffffffffffff6
movsx eax, cx
shl eax, 1
push 0xd2
push 0x6e
inc cx
push str.button_leftArrow.kfm
mov word [0x86e330], cx
push str.FlagLeft
mov ecx, 0x11
mov word [eax + 0x86e1a0], 1
mov word [eax + 0x86e010], 0x214
mov word [eax + 0x86de80], di
mov word [eax + 0x86dcf0], 0x228
mov word [eax + 0x86db60], bp
call fcn.004b1ee0
mov esi, eax
mov eax, dword [esp + 0x44]
cmp eax, esi
je 0x4b85a8
mov ecx, eax
test ecx, ecx
je 0x4b859d
dec dword [ecx + 4]
jne 0x4b859d
mov eax, dword [ecx]
push 1
call dword [eax]
test esi, esi
mov dword [esp + 0x44], esi
je 0x4b85a8
inc dword [esi + 4]
mov ebx, dword [0x8ccbe8]
push 0x11
call fcn.004b2080
mov cx, word [0x86e330]
mov edx, dword [0x8ccbe8]
push 0xfffffffffffffff6
movsx eax, cx
shl eax, 1
push 0xd2
push 0x21c
inc cx
mov word [eax + 0x86dcf0], di
push str.button_rightArrow.kfm
mov word [0x86e330], cx
mov ebp, 0xc7
mov edi, 0xdb
push str.FlagRight
mov ecx, 0x12
mov word [eax + 0x86e1a0], 2
mov word [eax + 0x86e010], 0x62
mov word [eax + 0x86de80], bp
mov word [eax + 0x86db60], di
call fcn.004b1ee0
mov esi, eax
mov eax, dword [esp + 0x48]
cmp eax, esi
je 0x4b8647
mov ecx, eax
test ecx, ecx
je 0x4b863c
dec dword [ecx + 4]
jne 0x4b863c
mov edx, dword [ecx]
push 1
call dword [edx]
test esi, esi
mov dword [esp + 0x48], esi
je 0x4b8647
inc dword [esi + 4]
mov ebx, dword [0x8ccbe8]
push 0x12
call fcn.004b2080
mov cx, word [0x86e330]
mov edx, dword [0x8ccbe8]
push 0xfffffffffffffff6
movsx eax, cx
shl eax, 1
push 0x168
push 0xd5
inc cx
push str.button_abandon.kfm
mov word [0x86e330], cx
push str.SailCancel
mov ecx, 0x13
mov word [eax + 0x86e1a0], 3
mov word [eax + 0x86e010], 0x214
mov word [eax + 0x86de80], bp
mov word [eax + 0x86dcf0], 0x228
mov word [eax + 0x86db60], di
call fcn.004b1ee0
mov esi, eax
mov eax, dword [esp + 0x4c]
cmp eax, esi
je 0x4b86de
mov ecx, eax
test ecx, ecx
je 0x4b86d3
dec dword [ecx + 4]
jne 0x4b86d3
mov eax, dword [ecx]
push 1
call dword [eax]
test esi, esi
mov dword [esp + 0x4c], esi
je 0x4b86de
inc dword [esi + 4]
mov ebx, dword [0x8ccbe8]
push 0x13
call fcn.004b2080
mov cx, word [0x86e330]
mov edx, dword [0x8ccbe8]
push 0xfffffffffffffff6
movsx eax, cx
shl eax, 1
push 0x168
push 0x197
inc cx
push str.button_continueExit.kfm
mov word [0x86e330], cx
push str.SailAccept
mov ecx, 0x14
mov word [eax + 0x86e1a0], 4
mov word [eax + 0x86e010], 0xc9
mov word [eax + 0x86de80], 0x15f
mov word [eax + 0x86dcf0], 0xdd
mov word [eax + 0x86db60], 0x173
call fcn.004b1ee0
mov ecx, dword [esp + 0x50]
mov esi, eax
cmp ecx, esi
je 0x4b8777
test ecx, ecx
je 0x4b876c
dec dword [ecx + 4]
jne 0x4b876c
mov edx, dword [ecx]
push 1
call dword [edx]
test esi, esi
mov dword [esp + 0x50], esi
je 0x4b8777
inc dword [esi + 4]
mov ebx, dword [0x8ccbe8]
push 0x14
call fcn.004b2080
mov cx, word [0x86e330]
movsx eax, cx
shl eax, 1
inc cx
mov word [0x86e330], cx
mov cl, byte [esp + 0xec]
xor ebp, ebp
test cl, cl
mov word [eax + 0x86e1a0], 5
mov word [eax + 0x86e010], 0x182
mov word [eax + 0x86de80], 0x153
mov word [eax + 0x86dcf0], 0x1ac
mov word [eax + 0x86db60], 0x17d
mov dword [esp + 0x38], ebp
mov eax, 0x400
je 0x4b883d
mov ecx, dword [0x8ccbe8]
mov ecx, dword [ecx + 0xf8]
cmp ecx, ebp
je 0x4b880d
mov esi, dword [ecx + 4]
inc esi
mov edx, esi
inc edx
mov eax, edx
mov dword [ecx + 4], esi
dec eax
mov dword [ecx + 4], edx
mov dword [esp + 0x38], ecx
mov dword [ecx + 4], eax
jne 0x4b883d
mov edx, dword [ecx]
push 1
call dword [edx]
jmp 0x4b883d
mov dword [esp + 0x34], eax
mov dword [esp + 0x20], eax
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x38]
push ecx
push ebp
push ebp
push str.pauseMenuBG.dds
call fcn.004ceb00
add esp, 0x14
cmp eax, ebp
je 0x4b883d
mov ecx, dword [eax + 4]
inc ecx
mov dword [esp + 0x38], eax
mov dword [eax + 4], ecx
mov eax, dword [0x8eafb8]
cmp eax, ebp
mov dword [esp + 0x54], eax
je 0x4b884d
inc dword [eax + 4]
mov eax, dword [0x8eafb4]
cmp eax, ebp
mov dword [esp + 0x30], eax
je 0x4b885d
inc dword [eax + 4]
push 1
mov ecx, 0x8cdad8
call fcn.004bbbd0
cmp eax, ebp
mov dword [esp + 0x24], eax
je 0x4b8874
inc dword [eax + 4]
mov edx, dword [0x8ec008]
mov dword [eax + 0x18], edx
mov eax, dword [eax + 0xbc]
mov ecx, dword [0x8ec008]
mov dword [eax + 0x18], ecx
mov edx, dword [0x728a88]
cmp dword [edx - 4], ebp
mov dword [esp + 0x18], ebp
je 0x4b88fb
cmp dword [esp + 0xf0], ebp
jle 0x4b88fb
mov eax, dword [esp + 0xf4]
mov edi, dword [eax + 4]
mov edx, dword [esp + 0xf0]
mov esi, dword [edi]
mov eax, dword [0x728a88]
lea esp, [esp]
mov bl, byte [eax]
mov cl, bl
cmp bl, byte [esi]
jne 0x4b88e4
test cl, cl
je 0x4b88e0
mov bl, byte [eax + 1]
mov cl, bl
cmp bl, byte [esi + 1]
jne 0x4b88e4
add eax, 2
add esi, 2
test cl, cl
jne 0x4b88c0
xor eax, eax
jmp 0x4b88e9
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4b88f7
inc ebp
add edi, 4
cmp ebp, edx
jl 0x4b88b5
jmp 0x4b88fb
mov dword [esp + 0x18], ebp
mov ecx, dword [0x728a8c]
mov edx, dword [ecx - 4]
xor eax, eax
test edx, edx
mov dword [esp + 0x20], eax
je 0x4b896d
mov edx, dword [esp + 0xf8]
xor ebp, ebp
test edx, edx
jle 0x4b896d
mov eax, dword [esp + 0xfc]
mov edi, dword [eax + 4]
mov esi, dword [edi]
mov eax, dword [0x728a8c]
lea esp, [esp]
mov bl, byte [eax]
mov cl, bl
cmp bl, byte [esi]
jne 0x4b8954
test cl, cl
je 0x4b8950
mov bl, byte [eax + 1]
mov cl, bl
cmp bl, byte [esi + 1]
jne 0x4b8954
add eax, 2
add esi, 2
test cl, cl
jne 0x4b8930
xor eax, eax
jmp 0x4b8959
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4b896b
inc ebp
add edi, 4
cmp ebp, edx
jl 0x4b8925
mov eax, dword [esp + 0x20]
jmp 0x4b896d
mov eax, ebp
mov ebx, dword [esp + 0x18]
or ecx, 0xffffffff
mov dword [esp + 0x70], ecx
mov dword [esp + 0x5c], ecx
xor ecx, ecx
xor edx, edx
mov dword [esp + 0x80], ecx
mov dword [esp + 0x74], edx
mov dword [esp + 0x84], ecx
mov dword [esp + 0x78], edx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x18], eax
mov dword [esp + 0x88], ecx
mov dword [esp + 0x7c], edx
mov al, byte [0x8ccc27]
test al, al
mov ebp, dword [esp + 0xf8]
mov edi, dword [sym.imp.WINMM.dll_timeGetTime]
je 0x4b89c9
mov byte [esp + 0x13], 1
mov byte [esp + 0x12], 1
test byte [0x8ef61c], 1
mov esi, dword [esp + 0x6c]
jne 0x4b89e4
or dword [0x8ef61c], 1
call edi
mov dword [0x8ef618], eax
call edi
sub eax, dword [0x8ef618]
mov dword [esp + 0x6c], eax
sub eax, esi
mov dword [esp + 0x8c], eax
mov al, byte [esp + 0xec]
test al, al
je 0x4b8a48
mov eax, dword [0x85c268]
mov ecx, dword [0x85c26c]
mov edx, dword [esp + 0x38]
push 0x200
push 0xffffffffffffffff
push eax
push ecx
push 0
push 0
push 0x300
push 0x400
push 0
push 0
push edx
call fcn.004af500
mov eax, dword [0x7283bc]
add esp, 0x2c
or eax, 0x1000
mov dword [0x7283bc], eax
jmp 0x4b8a55
mov eax, dword [0x8ccbe8]
push 1
push eax
call fcn.004b2b90
push str.Change_Sails_and_Flags
mov esi, 0x8ebf58
call fcn.004f7660
mov eax, dword [0x85c26c]
add esp, 4
push 0
push 0xffffffffffffffff
push 4
cdq
push 0xffffffffffffffff
sub eax, edx
push 0x64
sar eax, 1
push 0x20
push eax
mov eax, dword [0x8cb56c]
push 0x86bb48
mov dword [0x85c11c], 0x64
call fcn.004b0b40
mov eax, dword [esp + 0x34]
add esp, 0x20
test eax, eax
jne 0x4b8add
mov ecx, dword [0x85c268]
mov eax, 0x66666667
imul ecx
mov eax, dword [0x85c26c]
sar edx, 1
mov ecx, edx
shr ecx, 0x1f
lea ecx, [edx + ecx - 5]
cdq
sub eax, edx
sar eax, 1
sub eax, 0xd2
push ecx
push eax
mov eax, 0x4a
mov ecx, 0x1a4
call fcn.00488110
add esp, 8
mov eax, dword [esp + 0xf0]
test eax, eax
jne 0x4b8b49
push str.You_have_no_custom_sails_that_can_be_used.
mov esi, 0x8ebf58
call fcn.004f7660
mov ecx, dword [0x85c268]
mov eax, 0x66666667
imul ecx
add esp, 4
sar edx, 1
push 0
mov eax, edx
shr eax, 0x1f
lea ecx, [edx + eax + 0x32]
mov eax, dword [0x85c26c]
push 0xffffffffffffffff
push 4
cdq
push 0xffffffffffffffff
sub eax, edx
push 0x50
add ecx, 0xffffffec
sar eax, 1
push ecx
push eax
push 0x86bb48
xor eax, eax
mov dword [0x85c11c], 0x50
call fcn.004b0b40
add esp, 0x20
jmp 0x4b8e59
cmp ebx, dword [esp + 0x70]
je 0x4b8de9
mov ebp, dword [esp + 0xf0]
or edi, 0xffffffff
dec ebx
mov edi, edi
test ebx, ebx
mov eax, ebx
jge 0x4b8b69
lea eax, [ebx + ebp]
cdq
idiv ebp
mov ecx, dword [esp + 0xf4]
mov eax, dword [ecx + 4]
mov edx, dword [eax + edx*4]
xor eax, eax
mov esi, edx
call fcn.00502020
mov ecx, dword [esp + edi*4 + 0x84]
mov esi, eax
cmp ecx, esi
je 0x4b8bac
test ecx, ecx
je 0x4b8b9e
dec dword [ecx + 4]
jne 0x4b8b9e
mov edx, dword [ecx]
push 1
call dword [edx]
test esi, esi
mov dword [esp + edi*4 + 0x84], esi
je 0x4b8bac
inc dword [esi + 4]
inc edi
inc ebx
cmp edi, 1
jle 0x4b8b60
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x70], eax
mov eax, 1
cdq
idiv ebp
mov esi, dword [esp + edx*4 + 0x80]
xor ebp, ebp
lea eax, [esp + edx*4 + 0x80]
mov eax, dword [0x8eafb8]
cmp eax, esi
je 0x4b8c04
cmp eax, ebp
je 0x4b8bf7
mov edi, dword [eax + 4]
mov ecx, eax
add eax, 4
dec edi
mov edx, edi
cmp edx, ebp
mov dword [eax], edi
jne 0x4b8bf7
mov edx, dword [ecx]
push 1
call dword [edx]
cmp esi, ebp
mov dword [0x8eafb8], esi
je 0x4b8c04
inc dword [esi + 4]
mov ebx, dword [esp + 0x24]
cmp dword [ebx + 0x50], ebp
je 0x4b8c97
mov ecx, dword [0x8cc4e0]
call fcn.00552c40
cmp dword [0x8cc4cc], ebp
jne 0x4b8c89
mov eax, dword [0x8cc4c8]
cmp dword [eax + 0xc], ebp
jbe 0x4b8c89
mov ecx, dword [0x8cc4e0]
push ebp
call fcn.00552ba0
test eax, eax
jne 0x4b8c89
mov ecx, dword [0x8cc4c8]
mov eax, dword [ecx + 4]
mov edx, dword [eax]
cmp edx, ebp
mov esi, ecx
mov dword [ecx + 4], edx
je 0x4b8c57
mov dword [edx + 4], ebp
jmp 0x4b8c5a
mov dword [ecx + 8], ebp
mov edx, dword [ecx]
mov edi, dword [eax + 8]
push eax
call dword [edx + 8]
mov eax, dword [esi + 0xc]
mov ecx, dword [0x8cc4e0]
dec eax
mov dword [esi + 0xc], eax
mov dword [0x8cc4cc], edi
mov eax, dword [0x8cc4cc]
add eax, 8
mov eax, dword [eax]
mov eax, dword [eax + 8]
push eax
call fcn.00546910
mov eax, dword [0x8cc4cc]
cmp dword [ebx + 0x50], ebp
jne 0x4b8c11
mov eax, dword [ebx + 0xbc]
cmp eax, ebp
je 0x4b8cb1
cmp dword [0x7283a0], 1
jg 0x4b8cb1
call fcn.004bb170
jmp 0x4b8cb4
mov eax, dword [ebx + 0x1c]
push str.ship_sail_emblem_lrg
push eax
call fcn.004bfcb0
mov ecx, dword [eax + 0x2c]
mov edi, dword [ecx + 0x18]
mov esi, dword [edi + 4]
add esp, 8
cmp esi, ebp
je 0x4b8d26
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 4]
cmp eax, ebp
je 0x4b8cf2
lea ebx, [ebx]
cmp eax, 0x729520
je 0x4b8d77
mov eax, dword [eax + 4]
cmp eax, ebp
jne 0x4b8ce0
xor al, al
neg al
sbb eax, eax
and eax, esi
mov dword [esp + 0x58], eax
je 0x4b8d26
mov esi, dword [0x8eafb8]
mov ecx, dword [edi + 4]
cmp ecx, esi
je 0x4b8d26
cmp ecx, ebp
je 0x4b8d1c
dec dword [ecx + 4]
jne 0x4b8d1c
mov eax, dword [ecx]
push 1
call dword [eax]
cmp esi, ebp
mov dword [edi + 4], esi
je 0x4b8d26
inc dword [esi + 4]
cmp dword [ebx + 0x50], ebp
je 0x4b8dbe
nop
mov ecx, dword [0x8cc4e0]
call fcn.00552c40
cmp dword [0x8cc4cc], ebp
jne 0x4b8db0
mov ecx, dword [0x8cc4c8]
cmp dword [ecx + 0xc], ebp
jbe 0x4b8db0
mov ecx, dword [0x8cc4e0]
push ebp
call fcn.00552ba0
test eax, eax
jne 0x4b8db0
mov ecx, dword [0x8cc4c8]
mov eax, dword [ecx + 4]
mov edx, dword [eax]
cmp edx, ebp
mov esi, ecx
mov dword [ecx + 4], edx
je 0x4b8d7e
mov dword [edx + 4], ebp
jmp 0x4b8d81
mov al, 1
jmp 0x4b8cf4
mov dword [ecx + 8], ebp
mov edx, dword [ecx]
mov edi, dword [eax + 8]
push eax
call dword [edx + 8]
mov eax, dword [esi + 0xc]
mov ecx, dword [0x8cc4e0]
dec eax
mov dword [esi + 0xc], eax
mov dword [0x8cc4cc], edi
mov eax, dword [0x8cc4cc]
add eax, 8
mov eax, dword [eax]
mov eax, dword [eax + 8]
push eax
call fcn.00546910
mov eax, dword [0x8cc4cc]
cmp dword [ebx + 0x50], ebp
jne 0x4b8d30
mov eax, dword [ebx + 0xbc]
cmp eax, ebp
je 0x4b8dd8
cmp dword [0x7283a0], 1
jg 0x4b8dd8
call fcn.004bb170
jmp 0x4b8ddb
mov eax, dword [ebx + 0x1c]
mov ecx, eax
call fcn.00535990
mov ebp, dword [esp + 0xf8]
xor ebx, ebx
xor esi, esi
lea ecx, [ecx]
mov edi, dword [esp + esi + 0x80]
test edi, edi
je 0x4b8e4b
mov ecx, dword [esp + esi + 0x94]
push ecx
mov ecx, dword [0x85c268]
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
lea ecx, [edx + eax + 2]
mov eax, dword [0x85c26c]
push 0xffffffffffffffff
push 0x40
cdq
push 0x40
push ecx
sub eax, edx
sar eax, 1
lea edx, [eax + ebx - 0xa6]
push edx
push 0x200
push 0x200
push 0
push 0
push edi
call fcn.004af500
add esp, 0x2c
add esi, 4
add ebx, 0x8c
cmp esi, 0xc
jl 0x4b8df0
cmp dword [esp + 0x14], 1
jne 0x4b8e9b
mov ecx, dword [0x85c268]
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
lea ecx, [edx + eax + 0x4b]
mov eax, dword [0x85c26c]
cdq
sub eax, edx
sar eax, 1
sub eax, 0xd2
push ecx
push eax
mov eax, 0x4a
mov ecx, 0x1a4
call fcn.00488110
add esp, 8
test ebp, ebp
jne 0x4b8f06
push str.You_have_no_custom_flags_that_can_be_used.
mov esi, 0x8ebf58
call fcn.004f7660
mov ecx, dword [0x85c268]
mov eax, 0x66666667
imul ecx
mov eax, dword [0x85c26c]
add esp, 4
push ebp
sar edx, 1
push 0xffffffffffffffff
mov ecx, edx
shr ecx, 0x1f
push 4
lea ecx, [edx + ecx + 0x82]
cdq
push 0xffffffffffffffff
sub eax, edx
push 0x50
add ecx, 0xffffffec
sar eax, 1
push ecx
push eax
push 0x86bb48
xor eax, eax
mov dword [0x85c11c], 0x50
call fcn.004b0b40
mov ebp, dword [esp + 0x44]
add esp, 0x20
jmp 0x4b9286
mov ebx, dword [esp + 0x18]
cmp ebx, dword [esp + 0x5c]
je 0x4b9213
or edi, 0xffffffff
dec ebx
test ebx, ebx
mov eax, ebx
jge 0x4b8f21
lea eax, [ebx + ebp]
cdq
idiv ebp
mov eax, dword [esp + 0xfc]
mov ecx, dword [eax + 4]
xor eax, eax
mov edx, dword [ecx + edx*4]
mov esi, edx
call fcn.00502020
mov ecx, dword [esp + edi*4 + 0x78]
mov esi, eax
cmp ecx, esi
je 0x4b8f5e
test ecx, ecx
je 0x4b8f53
dec dword [ecx + 4]
jne 0x4b8f53
mov edx, dword [ecx]
push 1
call dword [edx]
test esi, esi
mov dword [esp + edi*4 + 0x78], esi
je 0x4b8f5e
inc dword [esi + 4]
inc edi
inc ebx
cmp edi, 1
jle 0x4b8f18
mov eax, dword [esp + 0x18]
mov dword [esp + 0x5c], eax
mov eax, 1
cdq
idiv ebp
mov esi, dword [esp + edx*4 + 0x74]
lea eax, [esp + edx*4 + 0x74]
mov eax, dword [0x8eafb4]
cmp eax, esi
je 0x4b8fae
test eax, eax
je 0x4b8fa1
mov edi, dword [eax + 4]
mov ecx, eax
add eax, 4
dec edi
mov edx, edi
test edx, edx
mov dword [eax], edi
jne 0x4b8fa1
mov edx, dword [ecx]
push 1
call dword [edx]
test esi, esi
mov dword [0x8eafb4], esi
je 0x4b8fae
inc dword [esi + 4]
mov ebp, dword [esp + 0x24]
mov eax, dword [ebp + 0x50]
xor ebx, ebx
cmp eax, ebx
je 0x4b9046
nop
mov ecx, dword [0x8cc4e0]
call fcn.00552c40
cmp dword [0x8cc4cc], ebx
jne 0x4b9038
mov eax, dword [0x8cc4c8]
cmp dword [eax + 0xc], ebx
jbe 0x4b9038
mov ecx, dword [0x8cc4e0]
push ebx
call fcn.00552ba0
test eax, eax
jne 0x4b9038
mov ecx, dword [0x8cc4c8]
mov eax, dword [ecx + 4]
mov edx, dword [eax]
cmp edx, ebx
mov esi, ecx
mov dword [ecx + 4], edx
je 0x4b9006
mov dword [edx + 4], ebx
jmp 0x4b9009
mov dword [ecx + 8], ebx
mov edx, dword [ecx]
mov edi, dword [eax + 8]
push eax
call dword [edx + 8]
mov eax, dword [esi + 0xc]
mov ecx, dword [0x8cc4e0]
dec eax
mov dword [esi + 0xc], eax
mov dword [0x8cc4cc], edi
mov eax, dword [0x8cc4cc]
add eax, 8
mov eax, dword [eax]
mov eax, dword [eax + 8]
push eax
call fcn.00546910
mov eax, dword [0x8cc4cc]
cmp dword [ebp + 0x50], ebx
jne 0x4b8fc0
mov eax, dword [ebp + 0xbc]
cmp eax, ebx
je 0x4b9060
cmp dword [0x7283a0], 1
jg 0x4b9060
call fcn.004bb170
jmp 0x4b9063
mov eax, dword [ebp + 0x1c]
push str.flag_
push eax
call fcn.004bfc00
mov esi, eax
mov ecx, dword [esi + 0x2c]
mov eax, dword [ecx]
add esp, 8
cmp eax, ebx
je 0x4b9149
mov edi, dword [eax + 4]
test edi, edi
je 0x4b9149
mov edx, dword [edi]
mov ecx, edi
call dword [edx + 4]
test eax, eax
je 0x4b90a4
cmp eax, 0x729520
je 0x4b90de
mov eax, dword [eax + 4]
test eax, eax
jne 0x4b9096
xor al, al
neg al
sbb eax, eax
and eax, edi
mov dword [esp + 0x58], eax
je 0x4b9149
mov eax, dword [esi + 0x2c]
mov edi, dword [eax]
test edi, edi
mov ebx, dword [0x8eafb4]
jne 0x4b9129
push 0x1c
call fcn.005354b8
add esp, 4
test eax, eax
je 0x4b90e2
mov ecx, eax
call fcn.00543e60
mov edi, eax
jmp 0x4b90e4
mov al, 1
jmp 0x4b90a6
xor edi, edi
mov eax, dword [esi + 0x30]
test eax, eax
jbe 0x4b9129
mov eax, dword [esi + 0x34]
test eax, eax
ja 0x4b9103
test edi, edi
mov dword [esi + 0x34], 1
je 0x4b9124
mov eax, dword [esi + 0x38]
inc eax
jmp 0x4b9121
test edi, edi
je 0x4b9115
mov ecx, dword [esi + 0x2c]
cmp dword [ecx], 0
jne 0x4b9124
mov eax, dword [esi + 0x38]
inc eax
jmp 0x4b9121
mov edx, dword [esi + 0x2c]
cmp dword [edx], 0
je 0x4b9124
mov eax, dword [esi + 0x38]
dec eax
mov dword [esi + 0x38], eax
mov eax, dword [esi + 0x2c]
mov dword [eax], edi
mov ecx, dword [edi + 4]
cmp ecx, ebx
je 0x4b9149
test ecx, ecx
je 0x4b913f
dec dword [ecx + 4]
jne 0x4b913f
mov edx, dword [ecx]
push 1
call dword [edx]
test ebx, ebx
mov dword [edi + 4], ebx
je 0x4b9149
inc dword [ebx + 4]
mov eax, dword [ebp + 0x50]
test eax, eax
je 0x4b91e6
xor ebx, ebx
jmp 0x4b9160
mov ecx, dword [0x8cc4e0]
call fcn.00552c40
cmp dword [0x8cc4cc], ebx
jne 0x4b91d8
mov eax, dword [0x8cc4c8]
cmp dword [eax + 0xc], ebx
jbe 0x4b91d8
mov ecx, dword [0x8cc4e0]
push ebx
call fcn.00552ba0
test eax, eax
jne 0x4b91d8
mov ecx, dword [0x8cc4c8]
mov eax, dword [ecx + 4]
mov edx, dword [eax]
cmp edx, ebx
mov esi, ecx
mov dword [ecx + 4], edx
je 0x4b91a6
mov dword [edx + 4], ebx
jmp 0x4b91a9
mov dword [ecx + 8], ebx
mov edx, dword [ecx]
mov edi, dword [eax + 8]
push eax
call dword [edx + 8]
mov eax, dword [esi + 0xc]
mov ecx, dword [0x8cc4e0]
dec eax
mov dword [esi + 0xc], eax
mov dword [0x8cc4cc], edi
mov eax, dword [0x8cc4cc]
add eax, 8
mov eax, dword [eax]
mov eax, dword [eax + 8]
push eax
call fcn.00546910
mov eax, dword [0x8cc4cc]
cmp dword [ebp + 0x50], ebx
jne 0x4b9160
mov eax, dword [ebp + 0xbc]
test eax, eax
je 0x4b9207
cmp dword [0x7283a0], 1
jg 0x4b9207
call fcn.004bb170
mov ecx, eax
call fcn.00535990
jmp 0x4b9217
mov eax, dword [ebp + 0x1c]
mov ecx, eax
call fcn.00535990
jmp 0x4b9217
mov ebp, dword [esp + 0x24]
xor ebx, ebx
xor esi, esi
jmp 0x4b9220
mov edi, dword [esp + esi + 0x74]
test edi, edi
je 0x4b9278
mov ecx, dword [esp + esi + 0x94]
push ecx
mov ecx, dword [0x85c268]
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
lea ecx, [edx + eax + 0x52]
mov eax, dword [0x85c26c]
push 0xffffffffffffffff
push 0x40
cdq
push 0x40
push ecx
sub eax, edx
sar eax, 1
lea edx, [eax + ebx - 0xa6]
push edx
push 0x100
push 0x100
push 0
push 0
push edi
call fcn.004af500
add esp, 0x2c
add esi, 4
add ebx, 0x8c
cmp esi, 0xc
jl 0x4b9220
mov eax, dword [0x85c268]
fild dword [ebp + 0x38]
lea ecx, [eax + eax*2]
shl ecx, 1
fmul dword [0x7158f4]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [esp + 0x90], eax
mov eax, dword [0x85c26c]
cdq
fiadd dword [esp + 0x90]
sub eax, edx
sar eax, 1
xor edi, edi
sub eax, 0x10
push edi
mov dword [esp + 0x5c], eax
push 0x41700000
call fcn.005f275c
push eax
fild dword [ebp + 0x34]
fmul dword [0x7158f4]
fiadd dword [esp + 0x64]
call fcn.005f275c
push eax
push ebp
call fcn.004bc130
mov ecx, dword [0x8ca494]
shr ecx, 1
push ecx
mov ebx, eax
push 9
mov ecx, ebx
call fcn.004bc4e0
mov ecx, dword [ebx + 0xbc]
cmp ecx, edi
je 0x4b931a
push 0xe0000000
call fcn.004bd400
mov esi, dword [ebx + 0x1c]
push 0xbf490fdb
lea ecx, [esp + 0xa4]
call fcn.0053dfb0
lea edx, [esp + 0xa0]
push edx
push esi
call fcn.004c0010
lea eax, [esp + 0xa8]
push eax
push esi
call fcn.004bff90
push edi
push edi
push 0xbf060a92
lea eax, [esp + 0xe0]
call fcn.004dc670
mov eax, dword [ebx + 0x50]
add esp, 0x1c
cmp eax, edi
je 0x4b93fb
jmp 0x4b9370
mov ecx, dword [0x8cc4e0]
call fcn.00552c40
cmp dword [0x8cc4cc], edi
jne 0x4b93e9
mov ecx, dword [0x8cc4c8]
cmp dword [ecx + 0xc], edi
jbe 0x4b93e9
mov ecx, dword [0x8cc4e0]
push edi
call fcn.00552ba0
test eax, eax
jne 0x4b93e9
mov ecx, dword [0x8cc4c8]
mov eax, dword [ecx + 4]
mov edx, dword [eax]
cmp edx, edi
mov esi, ecx
mov dword [ecx + 4], edx
je 0x4b93b7
mov dword [edx + 4], edi
jmp 0x4b93ba
mov dword [ecx + 8], edi
mov edx, dword [ecx]
mov edi, dword [eax + 8]
push eax
call dword [edx + 8]
mov ebp, dword [esi + 0xc]
mov ecx, dword [0x8cc4e0]
mov dword [0x8cc4cc], edi
mov eax, dword [0x8cc4cc]
dec ebp
add eax, 8
mov dword [esi + 0xc], ebp
mov eax, dword [eax]
mov eax, dword [eax + 8]
push eax
call fcn.00546910
mov eax, dword [0x8cc4cc]
mov eax, dword [ebx + 0x50]
xor edi, edi
cmp eax, edi
jne 0x4b9370
mov eax, dword [ebx + 0xbc]
cmp eax, edi
je 0x4b9415
cmp dword [0x7283a0], 1
jg 0x4b9415
call fcn.004bb170
jmp 0x4b9418
mov eax, dword [ebx + 0x1c]
lea edi, [eax + 0x38]
mov eax, dword [0x8de30c]
mov ecx, 9
lea esi, [esp + 0xc4]
rep movsd dword es:[edi], dword [esi]
cmp dword [esp + 0x60], eax
mov ecx, dword [0x8de310]
jne 0x4b9444
cmp dword [esp + 0x64], ecx
je 0x4b94ea
mov edi, ecx
mov edx, edi
mov esi, eax
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], edi
call fcn.0042c6c0
mov ecx, dword [0x85c268]
mov ebp, eax
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp edi, eax
mov dword [esp + 0x68], ebp
jl 0x4b94aa
lea ecx, [eax + 0x4b]
cmp edi, ecx
jge 0x4b94aa
mov ebx, dword [esp + 0x14]
test ebx, ebx
je 0x4b94f2
push 0xffffffffffffffff
push 0xbf800000
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0x36
push 0x8ca278
call fcn.00488920
add esp, 0x1c
xor ebx, ebx
mov dword [esp + 0x14], ebx
jmp 0x4b94f2
lea edx, [eax + 0x4b]
cmp edi, edx
jl 0x4b94ee
add eax, 0x96
cmp edi, eax
jge 0x4b94ee
mov ebx, dword [esp + 0x14]
cmp ebx, 1
je 0x4b94f2
push 0xffffffffffffffff
push 0xbf800000
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0x36
push 0x8ca278
call fcn.00488920
mov ebx, 1
add esp, 0x1c
mov dword [esp + 0x14], ebx
jmp 0x4b94f2
mov ebp, dword [esp + 0x68]
mov ebx, dword [esp + 0x14]
cmp ebp, 0xffffffff
je case.default.0x4b9504
cmp ebp, 5
ja case.default.0x4b9504
jmp dword [ebp*4 + 0x4b9d08]
push str.Select_Previous_Sail
mov esi, 0x8ebf58
call fcn.004f7660
mov ecx, dword [0x85c268]
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
add esp, 4
shr eax, 0x1f
lea ecx, [edx + eax + 0x36]
jmp 0x4b95d4
push str.Select_Next_Sail
mov esi, 0x8ebf58
call fcn.004f7660
mov ecx, dword [0x85c268]
mov eax, 0x66666667
imul ecx
add esp, 4
push 0
push 0xffffffffffffffff
sar edx, 1
push 4
mov eax, edx
shr eax, 0x1f
lea ecx, [edx + eax + 0x36]
push 0xffffcc00
push 0x43
push ecx
mov ecx, dword [0x85c26c]
mov eax, ecx
cdq
and edx, 7
add eax, edx
sar eax, 3
sub ecx, eax
sub ecx, 4
push ecx
push 0x86bb48
xor eax, eax
mov dword [0x85c11c], 0x43
call fcn.004b0b40
add esp, 0x20
jmp case.default.0x4b9504
push str.Select_Previous_Flag
mov esi, 0x8ebf58
call fcn.004f7660
mov ecx, dword [0x85c268]
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
add esp, 4
shr eax, 0x1f
lea ecx, [edx + eax + 0x86]
mov eax, dword [0x85c26c]
push 0
cdq
push 0xffffffffffffffff
push 4
push 0xffffcc00
and edx, 7
add eax, edx
push 0x43
sar eax, 3
push ecx
add eax, 0x10
push eax
push 0x86bb48
xor eax, eax
mov dword [0x85c11c], 0x43
call fcn.004b0b40
add esp, 0x20
jmp case.default.0x4b9504
push str.Select_Next_Flag
mov esi, 0x8ebf58
call fcn.004f7660
mov ecx, dword [0x85c268]
mov eax, 0x66666667
imul ecx
add esp, 4
push 0
push 0xffffffffffffffff
sar edx, 1
push 4
mov eax, edx
shr eax, 0x1f
lea ecx, [edx + eax + 0x86]
push 0xffffcc00
push 0x43
push ecx
mov ecx, dword [0x85c26c]
mov eax, ecx
cdq
and edx, 7
add eax, edx
sar eax, 3
sub ecx, eax
sub ecx, 4
push ecx
push 0x86bb48
xor eax, eax
mov dword [0x85c11c], 0x43
call fcn.004b0b40
add esp, 0x20
jmp case.default.0x4b9504
push str.Cancel_Selection_And_Return_To_System_Options
mov esi, 0x8ebf58
call fcn.004f7660
add esp, 4
push 0
push 0x14
call fcn.00487950
mov ecx, dword [0x85c268]
mov eax, ecx
cdq
push 0
push 0xffffffffffffffff
and edx, 3
add eax, edx
push 2
sar eax, 2
sub ecx, eax
push 0xffffcc00
push 0x43
push ecx
mov ecx, dword [0x85c26c]
mov eax, 0x55555556
imul ecx
mov eax, edx
shr eax, 0x1f
lea ecx, [edx + eax - 0x10]
jmp 0x4b972b
push str.Accept_This_Sail_And_Return_To_System_Options
mov esi, 0x8ebf58
call fcn.004f7660
add esp, 4
push 0
push 0x14
call fcn.00487950
mov ecx, dword [0x85c268]
mov eax, ecx
cdq
push 0
push 0xffffffffffffffff
and edx, 3
add eax, edx
sar eax, 2
sub ecx, eax
push 1
push 0xffffcc00
push 0x43
push ecx
mov ecx, dword [0x85c26c]
mov eax, 0x55555556
imul ecx
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ecx, eax
add ecx, 0xc
push ecx
xor eax, eax
push 0x86bb48
mov dword [0x85c11c], 0x43
call fcn.004b0b40
add esp, 0x28
mov al, byte [esp + 0xec]
test al, al
push 0
je 0x4b976a
push 0
push 0
call fcn.004d1a40
add esp, 0xc
mov esi, str.Menu
call fcn.0042e410
jmp 0x4b9775
mov edi, dword [0x8ccbe8]
call fcn.004b2e50
test byte [0x86e360], 1
je 0x4b97a8
cmp ebp, 4
jge 0x4b97a8
mov ecx, dword [esp + 0x2c]
test ecx, ecx
jg 0x4b979b
lea eax, [ebp + 0x200]
mov dword [esp + 0x2c], 0x32
jmp 0x4b97b0
sub ecx, dword [esp + 0x8c]
mov dword [esp + 0x2c], ecx
jmp 0x4b97b0
mov dword [esp + 0x2c], 0x1f4
mov ecx, eax
sub ecx, 0x125
je 0x4b97ed
sub ecx, 2
jne 0x4b9805
test ebx, ebx
jne 0x4b97dd
mov eax, 0x201
add eax, 0xfffffdff
cmp eax, 4
ja case.default.0x4b97d6
jmp dword [eax*4 + 0x4b9d20]
cmp ebx, 1
jne 0x4b9890
mov eax, 0x203
jmp 0x4b97c8
test ebx, ebx
je 0x4b98c1
cmp ebx, 1
jne 0x4b9890
mov eax, 0x202
jmp 0x4b97c8
cmp eax, 0x200
jg 0x4b97c8
je 0x4b98c1
cmp eax, 0x1b
jg 0x4b9890
je case.0x4b97d6.516
dec eax
je 0x4b9a55
sub eax, 0xc
jne case.default.0x4b97d6
mov eax, 4
call fcn.0042e700
mov esi, dword [esp + 0x50]
mov eax, dword [esi + 0x23c]
push 0x3f800000
push 0
push 1
push 0x3f800000
push 3
call fcn.00507780
mov eax, dword [esi + 0x23c]
push 0x3f800000
push 0
push 0
push 0x3f800000
xor ebx, ebx
call fcn.00507700
mov eax, dword [esp + 0xf4]
mov ecx, dword [esp + 0x1c]
cmp dword [eax + 0xc], ecx
jbe 0x4b9b15
mov edx, dword [eax + 4]
lea eax, [edx + ecx*4]
jmp 0x4b9b2b
sub eax, 0x126
je 0x4b98a0
sub eax, 2
jne case.default.0x4b97d6
mov eax, 5
call fcn.0042e700
inc ebx
and ebx, 0x80000001
jns 0x4b98b8
dec ebx
or ebx, 0xfffffffe
inc ebx
mov dword [esp + 0x14], ebx
jmp case.default.0x4b97d6
mov eax, 4
call fcn.0042e700
mov esi, dword [esp + 0x3c]
mov eax, dword [esi + 0x23c]
push 0x3f800000
push 0
push 1
push 0x3f800000
push 3
call fcn.00507780
mov eax, dword [esi + 0x23c]
push 0x3f800000
push 0
push 0
push 0x3f800000
xor ebx, ebx
call fcn.00507700
mov ecx, dword [esp + 0xf0]
test ecx, ecx
je case.default.0x4b97d6
mov edx, dword [esp + 0x1c]
lea eax, [edx + ecx - 1]
cdq
idiv ecx
mov dword [esp + 0x1c], edx
jmp case.default.0x4b97d6
mov eax, 4
call fcn.0042e700
mov esi, dword [esp + 0x40]
mov eax, dword [esi + 0x23c]
push 0x3f800000
push 0
push 1
push 0x3f800000
push 3
call fcn.00507780
mov eax, dword [esi + 0x23c]
push 0x3f800000
push 0
push 0
push 0x3f800000
xor ebx, ebx
call fcn.00507700
mov ecx, dword [esp + 0xf0]
test ecx, ecx
je case.default.0x4b97d6
mov eax, dword [esp + 0x1c]
inc eax
cdq
idiv ecx
mov dword [esp + 0x1c], edx
jmp case.default.0x4b97d6
mov eax, 4
call fcn.0042e700
mov esi, dword [esp + 0x44]
mov eax, dword [esi + 0x23c]
push 0x3f800000
push 0
push 1
push 0x3f800000
push 3
call fcn.00507780
mov eax, dword [esi + 0x23c]
push 0x3f800000
push 0
push 0
push 0x3f800000
xor ebx, ebx
call fcn.00507700
mov ecx, dword [esp + 0xf8]
test ecx, ecx
je case.default.0x4b97d6
mov eax, dword [esp + 0x18]
lea eax, [eax + ecx - 1]
jmp 0x4b9a39
mov eax, 4
call fcn.0042e700
mov esi, dword [esp + 0x48]
mov eax, dword [esi + 0x23c]
push 0x3f800000
push 0
push 1
push 0x3f800000
push 3
call fcn.00507780
mov eax, dword [esi + 0x23c]
push 0x3f800000
push 0
push 0
push 0x3f800000
xor ebx, ebx
call fcn.00507700
mov ecx, dword [esp + 0xf8]
test ecx, ecx
je case.default.0x4b97d6
mov eax, dword [esp + 0x18]
inc eax
cdq
idiv ecx
mov dword [esp + 0x18], edx
mov al, byte [esp + 0x13]
test al, al
jne 0x4b9bc0
mov ebx, dword [esp + 0x1c]
jmp 0x4b89a9
mov byte [esp + 0x12], 1
mov eax, 3
call fcn.0042e700
mov esi, dword [esp + 0x4c]
mov eax, dword [esi + 0x23c]
push 0x3f800000
push 0
push 1
push 0x3f800000
push 3
call fcn.00507780
mov eax, dword [esi + 0x23c]
push 0x3f800000
push 0
push 0
push 0x3f800000
xor ebx, ebx
call fcn.00507700
mov eax, dword [0x8eafb8]
mov esi, dword [esp + 0x54]
cmp eax, esi
je 0x4b9ad3
test eax, eax
je 0x4b9ac6
mov edi, dword [eax + 4]
mov ecx, eax
add eax, 4
dec edi
mov edx, edi
test edx, edx
mov dword [eax], edi
jne 0x4b9ac6
mov edx, dword [ecx]
push 1
call dword [edx]
test esi, esi
mov dword [0x8eafb8], esi
je 0x4b9ad3
inc dword [esi + 4]
mov eax, dword [0x8eafb4]
mov ebp, dword [esp + 0x30]
cmp eax, ebp
je 0x4b9bc4
test eax, eax
je 0x4b9aff
mov esi, dword [eax + 4]
mov ecx, eax
add eax, 4
dec esi
mov edx, esi
test edx, edx
mov dword [eax], esi
jne 0x4b9aff
mov eax, dword [ecx]
push 1
call dword [eax]
test ebp, ebp
mov dword [0x8eafb4], ebp
je 0x4b9bc4
inc dword [ebp + 4]
jmp 0x4b9bc4
mov ebx, 0x6f7896
lea eax, [esp + 0x34]
mov dword [esp + 0x28], 1
call fcn.00412cb0
mov ecx, 0x728a88
call fcn.00412ec0
mov ebx, dword [esp + 0x28]
test bl, 1
mov esi, 0x8cccd0
je 0x4b9b63
mov eax, dword [esp + 0x34]
and ebx, 0xfffffffe
add eax, 0xfffffff8
je 0x4b9b5f
cmp eax, 0x8cccc8
je 0x4b9b5f
push eax
call sub.MSVCR71.dll_void___cdecl_operator_delete___void__
add esp, 4
mov dword [esp + 0x34], esi
mov ecx, dword [esp + 0xfc]
mov eax, dword [esp + 0x18]
cmp dword [ecx + 0xc], eax
jbe 0x4b9b7b
mov ecx, dword [ecx + 4]
lea eax, [ecx + eax*4]
jmp 0x4b9b94
or ebx, 2
mov dword [esp + 0x28], ebx
mov ebx, 0x6f7896
lea eax, [esp + 0x20]
call fcn.00412cb0
mov ebx, dword [esp + 0x28]
mov ecx, 0x728a8c
call fcn.00412ec0
test bl, 2
je 0x4b9bc0
mov eax, dword [esp + 0x20]
add eax, 0xfffffff8
je 0x4b9bbc
cmp eax, 0x8cccc8
je 0x4b9bbc
push eax
call sub.MSVCR71.dll_void___cdecl_operator_delete___void__
add esp, 4
mov dword [esp + 0x20], esi
mov ebp, dword [esp + 0x30]
mov esi, dword [0x8ccbe8]
mov edi, 0xf
call fcn.004b2030
mov esi, dword [0x8ccbe8]
mov edi, 0x10
call fcn.004b2030
mov esi, dword [0x8ccbe8]
mov edi, 0x11
call fcn.004b2030
mov esi, dword [0x8ccbe8]
mov edi, 0x12
call fcn.004b2030
mov esi, dword [0x8ccbe8]
mov edi, 0x13
call fcn.004b2030
mov esi, dword [0x8ccbe8]
mov edi, 0x14
call fcn.004b2030
mov ebx, dword [esp + 0x38]
test ebx, ebx
je 0x4b9c3b
dec dword [ebx + 4]
jne 0x4b9c39
mov edx, dword [ebx]
push 1
mov ecx, ebx
call dword [edx]
xor ebx, ebx
mov ecx, dword [esp + 0x24]
dec dword [ecx + 4]
jne 0x4b9c4a
mov eax, dword [ecx]
push 1
call dword [eax]
lea esi, [esp + 0x80]
mov edi, 3
mov ecx, dword [esi - 4]
sub esi, 4
test ecx, ecx
je 0x4b9c6b
dec dword [ecx + 4]
jne 0x4b9c6b
mov edx, dword [ecx]
push 1
call dword [edx]
dec edi
jne 0x4b9c56
lea esi, [esp + 0x8c]
mov edi, 3
lea ebx, [ebx]
mov ecx, dword [esi - 4]
sub esi, 4
test ecx, ecx
je 0x4b9c95
dec dword [ecx + 4]
jne 0x4b9c95
mov eax, dword [ecx]
push 1
call dword [eax]
dec edi
jne 0x4b9c80
test ebp, ebp
je 0x4b9caa
dec dword [ebp + 4]
jne 0x4b9caa
mov edx, dword [ebp]
push 1
mov ecx, ebp
call dword [edx]
mov eax, dword [esp + 0x54]
test eax, eax
je 0x4b9cbf
dec dword [eax + 4]
jne 0x4b9cbf
mov ecx, eax
mov eax, dword [ecx]
push 1
call dword [eax]
test ebx, ebx
je 0x4b9cd0
dec dword [ebx + 4]
jne 0x4b9cd0
mov edx, dword [ebx]
push 1
mov ecx, ebx
call dword [edx]
lea esi, [esp + 0x54]
mov edi, 6
lea esp, [esp]
mov ecx, dword [esi - 4]
sub esi, 4
test ecx, ecx
je 0x4b9cf5
dec dword [ecx + 4]
jne 0x4b9cf5
mov eax, dword [ecx]
push 1
call dword [eax]
dec edi
jne 0x4b9ce0
mov al, byte [esp + 0x12]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xd8
ret