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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0xd8
mov eax, dword [0x577018]
xor eax, esp
mov dword [esp + 0xd4], eax
mov eax, dword [ebp + 0x14]
mov dword [esp + 0x40], eax
or eax, 0xffffffff
push esi
mov esi, ecx
mov dword [esp + 0x60], eax
mov ecx, dword [ebp + 8]
xor eax, eax
push edi
mov edi, dword [ebp + 0xc]
cmp dword [esi + 0x24], 0
mov dword [esp + 0x8c], eax
mov dword [esp + 0x78], eax
mov byte [esp + 0x13], al
mov dword [esp + 0x54], eax
mov dword [esp + 0x80], eax
mov dword [esp + 0x90], eax
mov dword [esp + 0x7c], eax
mov eax, dword [esi]
mov dword [esp + 0x6c], edx
mov dword [esp + 0x1c], esi
mov dword [esp + 0x44], ecx
mov dword [esp + 0x14], edi
mov dword [esp + 0x5c], 0
mov dword [esp + 0x84], 0
mov dword [esp + 0x3c], 0
mov dword [esp + 0x50], eax
jne 0x47dbde
cmp byte [eax + 0x51], 0
jne 0x47dbde
mov dword [esp + 0xc8], 0
test ecx, ecx
je 0x47c6de
test dword [ecx + 8], 0x200
je 0x47c6de
cmp dword [ecx + 0x34], 0
jne 0x47c6de
mov edx, dword [ecx]
mov dword [esp + 0x54], edx
mov edx, ecx
mov dword [ecx], 0
mov ecx, eax
push 1
call fcn.00487ba0
add esp, 4
mov dword [esp + 0x44], 0
mov edx, dword [esp + 0x6c]
mov ecx, esi
call fcn.004738c0
mov edi, eax
mov dword [esp + 0xc], edi
test edi, edi
je 0x47dbda
mov ecx, dword [edi + 0x48]
mov edx, 0xfff0bdc0
mov dword [esp + 0x28], edx
test ecx, ecx
je 0x47c72c
mov eax, dword [esp + 0x50]
xor edx, edx
mov dword [esp + 0x28], edx
mov eax, dword [eax + 0x10]
add eax, 0xc
cmp dword [eax], ecx
je 0x47c72c
nop dword [eax + eax]
lea eax, [eax + 0x10]
inc edx
cmp dword [eax], ecx
jne 0x47c720
mov dword [esp + 0x28], edx
mov eax, dword [esp + 0x50]
add edx, edx
mov ecx, esi
mov eax, dword [eax + 0x10]
push dword [eax + edx*8]
mov edx, 0x12
push 0
push dword [edi]
call fcn.0046a650
add esp, 0xc
test eax, eax
jne 0x47dbda
mov eax, dword [edi + 0x24]
mov edx, edi
shr eax, 5
mov ecx, esi
and eax, 0xffffff01
mov dword [esp + 0x94], eax
lea eax, [esp + 0x4c]
push eax
push 0
push 0x74
call fcn.00495390
add esp, 0xc
mov dword [esp + 0x68], eax
mov eax, dword [edi + 0xc]
mov edx, edi
mov ecx, esi
mov dword [esp + 0x60], eax
call fcn.0046e2e0
test eax, eax
jne 0x47dbda
push dword [esp + 0x4c]
mov edx, edi
mov ecx, esi
call fcn.00473950
add esp, 4
test eax, eax
jne 0x47dbda
mov ecx, esi
call fcn.0048ae00
mov edi, eax
mov dword [esp + 0x2c], edi
test edi, edi
je 0x47dbda
cmp byte [esi + 0x12], 0
jne 0x47c7d0
or dword [edi + 0x98], 0x20
cmp dword [esp + 0x44], 0
jne 0x47c7e2
cmp dword [esp + 0x68], 0
jne 0x47c7e2
xor edx, edx
jmp 0x47c7e7
mov edx, 1
push dword [esp + 0x28]
mov ecx, esi
call fcn.00472010
add esp, 4
cmp dword [esp + 0x14], 0
jne 0x47c81d
push dword [esp + 0x28]
mov edx, dword [esp + 0x10]
mov ecx, esi
push dword [ebp + 0x10]
push dword [esp + 0x4c]
call fcn.0047fe40
add esp, 0xc
test eax, eax
jne 0x47db3f
push dword [esp + 0xc]
mov edx, dword [esp + 0x2c]
mov ecx, esi
call fcn.0047c280
mov ecx, dword [esi + 0x2c]
add esp, 4
mov edx, dword [esp + 0xc]
mov dword [esp + 0x88], eax
lea eax, [ecx + 1]
mov dword [esp + 0x74], eax
mov dword [esp + 0x18], eax
movsx eax, word [edx + 0x2a]
inc eax
add eax, ecx
mov dword [esi + 0x2c], eax
cmp dword [edx + 0x38], 0
je 0x47c865
add ecx, 2
inc eax
mov dword [esp + 0x18], ecx
mov dword [esi + 0x2c], eax
jmp 0x47c869
mov ecx, dword [esp + 0x18]
lea eax, [ecx + 1]
mov ecx, dword [edx + 0x24]
mov edx, dword [esp + 0x14]
shr ecx, 7
not cl
mov dword [esp + 0x40], eax
and ecx, 0xffffff01
mov dword [esp + 0x38], ecx
test edx, edx
je 0x47c9c0
mov eax, dword [edx + 4]
xor ecx, ecx
test eax, eax
jle 0x47c8b2
nop word [eax + eax]
mov eax, dword [edx]
mov dword [eax + ecx*8 + 4], 0xffffffff
inc ecx
mov eax, dword [edx + 4]
cmp ecx, eax
jl 0x47c8a0
xor edx, edx
mov dword [esp + 0x34], edx
test eax, eax
jle 0x47c9c0
mov eax, dword [esp + 0xc]
xor esi, esi
movsx eax, word [eax + 0x2a]
test eax, eax
jle 0x47c946
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx]
lea ecx, [eax + edx*8]
mov eax, dword [esp + 0xc]
mov dword [esp + 0x24], ecx
mov eax, dword [eax + 4]
mov dword [esp + 0x20], eax
mov edx, dword [eax]
mov ecx, dword [ecx]
call fcn.00427e20
test eax, eax
je 0x47c915
mov edx, dword [esp + 0xc]
inc esi
mov eax, dword [esp + 0x20]
add eax, 0x10
mov dword [esp + 0x20], eax
movsx ecx, word [edx + 0x2a]
cmp esi, ecx
mov ecx, dword [esp + 0x24]
jl 0x47c8e6
mov edx, dword [esp + 0x34]
jmp 0x47c946
mov eax, dword [esp + 0x24]
xor ecx, ecx
mov edx, dword [esp + 0x38]
mov dword [eax + 4], esi
movzx eax, dl
mov edx, dword [esp + 0x34]
cmp edx, esi
cmove ecx, eax
mov eax, dword [esp + 0xc]
mov byte [esp + 0x38], cl
movsx eax, word [eax + 0x28]
cmp esi, eax
jne 0x47c946
mov dword [esp + 0x64], edx
mov byte [esp + 0x38], cl
mov eax, dword [esp + 0xc]
movsx eax, word [eax + 0x2a]
cmp esi, eax
jl 0x47c9aa
mov eax, dword [esp + 0x14]
mov eax, dword [eax]
mov esi, dword [eax + edx*8]
mov edx, str._ROWID_
mov ecx, esi
call fcn.00427e20
test eax, eax
je 0x47c98f
mov edx, str.ROWID
mov ecx, esi
call fcn.00427e20
test eax, eax
je 0x47c98f
mov edx, 0x55b1fc
mov ecx, esi
call fcn.00427e20
test eax, eax
jne 0x47caf2
cmp byte [esp + 0x94], 0
jne 0x47caf2
mov edx, dword [esp + 0x34]
mov dword [esp + 0x64], edx
mov byte [esp + 0x38], 0
mov eax, dword [esp + 0x14]
inc edx
mov dword [esp + 0x34], edx
cmp edx, dword [eax + 4]
jl 0x47c8c0
mov esi, dword [esp + 0x1c]
cmp dword [esp + 0x44], 0
je 0x47cd5c
inc dword [esi + 0x2c]
mov edx, 0xd
mov eax, dword [edi + 0x6c]
mov ecx, dword [esi + 0x2c]
mov dword [esp + 0x70], eax
inc eax
push eax
push 0
mov dword [esp + 0x28], ecx
push ecx
mov ecx, edi
call fcn.00446430
mov eax, dword [esp + 0x2c]
add esp, 0xc
mov edx, dword [esp + 0x44]
mov ecx, esi
mov dword [esp + 0xc8], eax
xor eax, eax
cmp byte [esp + 0x38], al
mov byte [esp + 0xc4], 0xd
cmovne eax, dword [esp + 0x40]
mov dword [esp + 0xcc], eax
mov eax, dword [esp + 0xc]
mov dword [esp + 0xd4], 0
movsx eax, word [eax + 0x2a]
mov dword [esp + 0xd0], eax
lea eax, [esp + 0xc4]
push eax
call fcn.004906e0
mov ecx, dword [esp + 0xd0]
add esp, 4
mov dword [esp + 0x80], ecx
test eax, eax
jne 0x47dbda
mov eax, dword [esp + 0x50]
cmp byte [eax + 0x51], 0
jne 0x47dbda
cmp dword [esi + 0x24], 0
jne 0x47dbda
mov edx, dword [esp + 0x20]
mov ecx, edi
call fcn.00446a50
mov edx, dword [esp + 0x70]
mov ecx, edi
call fcn.00446ec0
cmp dword [esp + 0x68], 0
mov ecx, dword [esp + 0x44]
mov eax, dword [ecx]
mov eax, dword [eax]
mov dword [esp + 0x34], eax
jne 0x47cc89
mov eax, dword [esi + 8]
mov dword [esp + 0x24], eax
test eax, eax
jne 0x47cac7
cmp dword [esi + 0x74], eax
jne 0x47cabc
mov eax, dword [esi]
test byte [eax + 0x4c], 8
jne 0x47cabc
mov byte [esi + 0x17], 1
mov ecx, esi
call fcn.00446150
mov dword [esp + 0x24], eax
mov ecx, dword [esp + 0xc]
mov eax, dword [eax + 0x6c]
mov dword [esp + 0x30], eax
cmp dword [ecx + 0x38], 0
je 0x47cb14
mov edx, dword [ecx + 0x40]
test edx, edx
je 0x47cb16
mov eax, dword [esi]
cmp dword [edx], eax
je 0x47caec
mov edx, dword [edx + 0x18]
test edx, edx
jne 0x47cae1
mov eax, dword [esp + 0x30]
jmp 0x47cb16
push esi
mov esi, dword [esp + 0x20]
push 0
push dword [esp + 0x74]
push str.table__S_has_no_column_named__s
push esi
call fcn.00427d40
add esp, 0x14
mov byte [esi + 0x11], 1
jmp 0x47dbda
xor edx, edx
mov ecx, 1
mov dword [esp + 0x20], ecx
cmp eax, ecx
jle 0x47cbb1
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov al, byte [eax + 0x51]
mov byte [esp + 0x5b], al
mov eax, dword [esp + 0x30]
cmp byte [esp + 0x5b], 0
je 0x47cb46
mov eax, 0x57ad14
jmp 0x47cb59
dec eax
test ecx, ecx
cmovns eax, ecx
lea ecx, [eax + eax*4]
mov eax, dword [esp + 0x24]
mov eax, dword [eax + 0x68]
lea eax, [eax + ecx*4]
mov cl, byte [eax]
cmp cl, 0x6d
jne 0x47cb92
mov ecx, dword [esp + 0x28]
cmp dword [eax + 0xc], ecx
jne 0x47cba0
mov ecx, dword [eax + 8]
mov eax, dword [esp + 0xc]
cmp ecx, dword [eax + 0x1c]
je 0x47cc89
mov eax, dword [eax + 8]
test eax, eax
je 0x47cba0
cmp ecx, dword [eax + 0x2c]
je 0x47cc89
mov eax, dword [eax + 0x14]
test eax, eax
jne 0x47cb80
jmp 0x47cba0
cmp cl, 0xa4
jne 0x47cba0
cmp dword [eax + 0x10], edx
je 0x47cc89
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x30]
inc ecx
mov dword [esp + 0x20], ecx
cmp ecx, eax
jl 0x47cb38
mov eax, dword [esp + 0x34]
cmp dword [esp + 0x14], 0
mov ecx, dword [esp + 0xc]
jne 0x47cbcc
test eax, eax
jle 0x47cbcc
movsx eax, word [ecx + 0x28]
mov dword [esp + 0x64], eax
movsx edx, word [ecx + 0x2a]
xor eax, eax
mov dword [esp + 0x24], 0
mov dword [esp + 0x30], 0
cmp edx, 2
jl 0x47cdb2
mov eax, dword [ecx + 4]
mov dword [esp + 0x28], eax
lea ecx, [eax + 0x1f]
lea eax, [edx - 2]
shr eax, 1
inc eax
mov dword [esp + 0x70], eax
add eax, eax
mov edi, dword [esp + 0x70]
mov dword [esp + 0x20], eax
nop dword [eax]
movzx eax, byte [ecx - 0x10]
lea ecx, [ecx + 0x20]
shr eax, 1
and eax, 1
add dword [esp + 0x24], eax
movzx eax, byte [ecx - 0x20]
shr eax, 1
and eax, 1
add dword [esp + 0x30], eax
sub edi, 1
jne 0x47cc10
mov eax, dword [esp + 0x20]
mov edi, dword [esp + 0x2c]
cmp eax, edx
jl 0x47cdd0
xor eax, eax
mov ecx, dword [esp + 0x14]
test ecx, ecx
jne 0x47cde5
mov ecx, dword [esp + 0x34]
test ecx, ecx
je 0x47ce05
sub edx, dword [esp + 0x24]
sub edx, dword [esp + 0x30]
sub edx, eax
cmp ecx, edx
je 0x47ce05
push ecx
push edx
push 0
push dword [esp + 0x78]
push str.table__S_has__d_columns_but__d_values_were_supplied
push esi
call fcn.00427d40
add esp, 0x18
jmp 0x47dbda
mov edx, dword [esi + 0x28]
mov ecx, esi
mov byte [esp + 0x13], 1
mov dword [esp + 0x3c], edx
lea eax, [edx + 1]
mov dword [esi + 0x28], eax
call fcn.00464bb0
mov edi, eax
call fcn.00464bb0
push dword [esp + 0x34]
mov ecx, dword [esp + 0x30]
push edx
mov edx, 0x71
mov dword [esp + 0x2c], eax
call fcn.00446560
push dword [esp + 0xd0]
mov ecx, dword [esp + 0x38]
mov edx, 0xe
call fcn.00446500
mov ecx, dword [esp + 0x38]
add esp, 0xc
mov edx, 0x66
mov esi, eax
push edi
push dword [esp + 0x38]
push dword [esp + 0x88]
call fcn.00446430
mov ecx, dword [esp + 0x38]
add esp, 0xc
mov edx, 0x79
push dword [esp + 0x24]
push dword [esp + 0x40]
call fcn.00446560
push dword [esp + 0x2c]
mov ecx, dword [esp + 0x38]
mov edx, 0x7a
push edi
push dword [esp + 0x4c]
call fcn.00446430
mov ecx, dword [esp + 0x40]
add esp, 0x14
mov edx, esi
call fcn.004465d0
mov ecx, dword [esp + 0x2c]
mov edx, esi
call fcn.00446ec0
mov esi, dword [esp + 0x1c]
mov edx, edi
mov ecx, esi
call fcn.00464bd0
mov edx, dword [esp + 0x24]
call fcn.00464bd0
mov edi, dword [esp + 0x2c]
jmp 0x47cbb1
mov ecx, dword [esp + 0x54]
xorps xmm0, xmm0
movaps xmmword [esp + 0xa0], xmm0
movaps xmmword [esp + 0xb0], xmm0
mov dword [esp + 0xa0], esi
mov dword [esp + 0x3c], 0xffffffff
test ecx, ecx
je 0x47cda7
mov eax, dword [ecx]
mov edx, ecx
lea ecx, [esp + 0xa0]
mov dword [esp + 0x34], eax
call fcn.0045c430
test eax, eax
jne 0x47dbda
jmp 0x47cbb1
xor eax, eax
mov dword [esp + 0x34], eax
jmp 0x47cbb5
test edx, edx
jle 0x47cc42
mov ecx, dword [ecx + 4]
add eax, eax
movzx eax, byte [ecx + eax*8 + 0xf]
shr eax, 1
and eax, 1
jmp 0x47cc44
mov ecx, dword [esp + 0x28]
add eax, eax
movzx eax, byte [ecx + eax*8 + 0xf]
shr eax, 1
and eax, 1
jmp 0x47cc44
mov eax, dword [ecx + 4]
mov ecx, dword [esp + 0x34]
cmp ecx, eax
je 0x47ce05
push eax
push ecx
push str._d_values_for__d_columns
push esi
call fcn.00427d40
add esp, 0x10
jmp 0x47dbda
mov eax, dword [esp + 0x50]
mov eax, dword [eax + 0x20]
and eax, 0x80
or eax, 0
je 0x47ce41
cmp byte [esi + 0x12], 0
jne 0x47ce41
cmp dword [esi + 0x78], 0
jne 0x47ce41
inc dword [esi + 0x2c]
mov edx, 0x46
mov eax, dword [esi + 0x2c]
mov ecx, edi
push eax
push 0
mov dword [esp + 0x98], eax
call fcn.00446560
add esp, 8
cmp dword [esp + 0x60], 0
jne 0x47cec2
mov edx, dword [esp + 0xc]
lea eax, [esp + 0x84]
push eax
lea eax, [esp + 0x60]
mov ecx, esi
push eax
push 0
push 0xffffffffffffffff
push 0
push 0x6e
call fcn.0047fb10
mov ecx, dword [esp + 0x68]
mov dword [esp + 0x38], eax
push 0
lea eax, [eax*4 + 4]
push eax
call fcn.00423950
add esp, 0x20
mov dword [esp + 0x7c], eax
test eax, eax
je 0x47dbda
mov eax, dword [esp + 0xc]
xor ecx, ecx
mov edx, dword [eax + 8]
cmp dword [esp + 0x20], ecx
jle 0x47cec6
nop dword [eax]
inc dword [esi + 0x2c]
mov edi, dword [esp + 0x7c]
mov eax, dword [esi + 0x2c]
mov dword [edi + ecx*4], eax
inc ecx
movzx eax, word [edx + 0x34]
add dword [esi + 0x2c], eax
mov edx, dword [edx + 0x14]
cmp ecx, dword [esp + 0x20]
jl 0x47cea0
mov edi, dword [esp + 0x2c]
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x48]
test ecx, ecx
je 0x47cf1c
cmp dword [eax + 0x38], 0
je 0x47cee6
push dword [eax]
push str.UPSERT_not_implemented_for_virtual_table___s_
push esi
call fcn.00427d40
jmp 0x47dbd7
mov eax, dword [esp + 0x6c]
mov edx, dword [esp + 0x5c]
mov dword [eax + 0x34], edx
cmp dword [ecx], 0
mov dword [ecx + 0x14], eax
mov eax, dword [esp + 0x40]
mov dword [ecx + 0x18], eax
mov eax, dword [esp + 0x84]
mov dword [ecx + 0x1c], edx
mov dword [ecx + 0x20], eax
je 0x47cf1c
mov edx, dword [esp + 0x6c]
push ecx
mov ecx, esi
call fcn.004983f0
add esp, 4
cmp byte [esp + 0x13], 0
je 0x47cf43
push dword [esp + 0x3c]
mov edx, 0x24
mov ecx, edi
call fcn.00446500
mov dword [esp + 0x90], eax
mov eax, dword [edi + 0x6c]
mov dword [esp + 0x7c], eax
jmp 0x47cf6a
cmp dword [esp + 0x44], 0
je 0x47cf6d
push dword [esp + 0xc8]
mov edx, 0xe
mov ecx, edi
call fcn.00446500
mov ecx, eax
mov dword [esp + 0x7c], ecx
mov dword [esp + 0x90], ecx
add esp, 4
dec dword [esi + 0x38]
test byte [esp + 0x4c], 1
mov eax, dword [esi + 0x38]
mov dword [esp + 0x24], eax
je 0x47d351
mov eax, dword [esp + 0xc]
mov ecx, esi
movsx edx, word [eax + 0x2a]
inc edx
call fcn.00464bf0
mov ecx, dword [esp + 0x64]
mov dword [esp + 0x28], eax
push eax
test ecx, ecx
jns 0x47cfb2
push 0xffffffffffffffff
mov edx, 0x46
mov ecx, edi
call fcn.00446560
add esp, 8
jmp 0x47d027
cmp byte [esp + 0x17], 0
je 0x47cfcf
push ecx
push dword [esp + 0x44]
mov edx, 0x5a
mov ecx, edi
call fcn.00446430
add esp, 0xc
jmp 0x47cfe4
mov eax, dword [esp + 0x58]
lea edx, [ecx + ecx*2]
mov ecx, esi
mov edx, dword [eax + edx*8 + 4]
call fcn.004635e0
add esp, 4
push dword [esp + 0x28]
mov edx, 0x33
mov ecx, edi
call fcn.00446500
add esp, 4
mov edx, 0x46
mov ecx, edi
mov esi, eax
push dword [esp + 0x28]
push 0xffffffffffffffff
call fcn.00446560
mov edx, esi
mov ecx, edi
call fcn.00446ec0
push dword [esp + 0x30]
mov edx, 0xf
mov ecx, edi
call fcn.00446500
add esp, 0xc
mov eax, dword [esp + 0xc]
xor ecx, ecx
xor esi, esi
cmp cx, word [eax + 0x2a]
jge 0x47d2dc
mov eax, dword [esp + 0x28]
inc eax
mov dword [esp + 0x30], ecx
mov edx, eax
mov dword [esp + 0xc0], eax
or eax, 0xffffffff
mov dword [esp + 0x38], edx
sub eax, dword [esp + 0x28]
mov dword [esp + 0x70], eax
nop word [eax + eax]
mov eax, dword [esp + 0x14]
test eax, eax
je 0x47d09c
xor esi, esi
cmp dword [eax + 4], esi
jle 0x47d09c
mov ecx, dword [eax]
mov edi, dword [esp + 0x70]
add ecx, 4
nop dword [eax + eax]
lea eax, [edi + edx]
cmp dword [ecx], eax
mov eax, dword [esp + 0x14]
je 0x47d094
inc esi
add ecx, 8
cmp esi, dword [eax + 4]
jl 0x47d080
mov edi, dword [esp + 0x2c]
mov ecx, dword [esp + 0x30]
cmp byte [esp + 0x13], 0
jne 0x47d0aa
cmp dword [esp + 0x54], 0
je 0x47d0bb
test eax, eax
je 0x47d139
cmp esi, dword [eax + 4]
jl 0x47d139
mov eax, dword [esp + 0xc]
mov eax, dword [eax + 4]
mov eax, dword [eax + ecx + 4]
test eax, eax
je 0x47d0f0
cmp byte [eax], 0xa4
jne 0x47d0f0
push edx
push dword [eax + 0x1c]
mov eax, dword [esp + 0x24]
mov edx, 0x4e
mov ecx, dword [eax + 8]
call fcn.00446560
mov edx, dword [esp + 0x40]
add esp, 8
jmp 0x47d29a
mov ecx, dword [esp + 0x1c]
push edx
mov edx, eax
call fcn.004622f0
mov edx, dword [esp + 0x3c]
add esp, 4
mov dword [esp + 0x4c], eax
cmp eax, edx
je 0x47d29a
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x47d29a
push edx
push dword [esp + 0x50]
mov edx, 0x4f
call fcn.00446560
mov edx, dword [esp + 0x40]
add esp, 8
jmp 0x47d29a
cmp byte [esp + 0x13], 0
je 0x47d19a
mov ecx, dword [edi + 0x6c]
cmp dword [edi + 0x70], ecx
jg 0x47d166
push edx
push esi
push dword [esp + 0x44]
mov edx, 0x5a
mov ecx, edi
call fcn.004463f0
mov edx, dword [esp + 0x44]
add esp, 0xc
jmp 0x47d29a
mov edx, dword [esp + 0x3c]
lea eax, [ecx + 1]
mov dword [edi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edi + 0x68]
mov dword [eax + ecx*4 + 4], edx
mov edx, dword [esp + 0x38]
mov dword [eax + ecx*4], 0x5a
mov dword [eax + ecx*4 + 8], esi
mov dword [eax + ecx*4 + 0xc], edx
mov dword [eax + ecx*4 + 0x10], 0
jmp 0x47d29a
mov ecx, dword [esp + 0x54]
lea eax, [esi + esi*2]
mov eax, dword [ecx + eax*8 + 4]
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x9c], eax
mov edi, dword [ecx + 8]
mov dword [esp + 0x20], edi
test eax, eax
je 0x47d1cd
cmp byte [eax], 0xa4
jne 0x47d1cd
push edx
push dword [eax + 0x1c]
mov edx, 0x4e
mov ecx, edi
jmp 0x47d1f9
push edx
mov edx, eax
call fcn.004622f0
mov edx, dword [esp + 0x3c]
add esp, 4
mov dword [esp + 0x4c], eax
cmp eax, edx
je 0x47d205
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x47d209
push edx
push dword [esp + 0x50]
mov edx, 0x4f
call fcn.00446560
mov edx, dword [esp + 0x40]
add esp, 8
mov eax, dword [esp + 0x1c]
inc dword [eax + 0x2c]
mov ecx, edi
mov eax, dword [eax + 0x2c]
mov dword [esp + 0x4c], eax
mov edi, dword [ecx + 0x6c]
cmp dword [ecx + 0x70], edi
mov dword [esp + 0x98], edi
mov edi, dword [esp + 0x2c]
jg 0x47d23f
push 0
push eax
push edx
mov edx, 0x4e
call fcn.004463f0
mov edx, dword [esp + 0x44]
add esp, 0xc
jmp 0x47d27d
mov edi, dword [esp + 0x98]
lea eax, [edi + 1]
mov dword [ecx + 0x6c], eax
lea ecx, [edi + edi*4]
mov eax, dword [esp + 0x20]
mov edi, dword [esp + 0x4c]
mov eax, dword [eax + 0x68]
mov dword [eax + ecx*4 + 8], edi
mov edi, dword [esp + 0x2c]
mov dword [eax + ecx*4], 0x4e
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [esp + 0x9c]
mov al, byte [ecx]
and dword [ecx + 4], 0xffffefff
mov byte [ecx + 0x26], al
mov eax, dword [esp + 0x4c]
mov byte [ecx], 0xa4
mov dword [ecx + 0x1c], eax
add dword [esp + 0x30], 0x10
lea eax, [esi + 1]
mov ecx, dword [esp + 0x70]
inc edx
cmp dword [esp + 0x14], 0
mov dword [esp + 0x38], edx
cmovne eax, esi
add ecx, edx
mov esi, eax
mov eax, dword [esp + 0xc]
movsx eax, word [eax + 0x2a]
cmp ecx, eax
mov ecx, dword [esp + 0x30]
jl 0x47d060
mov esi, dword [esp + 0x28]
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xc0]
jmp 0x47d2e3
mov esi, dword [esp + 0x28]
lea ecx, [esi + 1]
cmp dword [esp + 0x60], 0
jne 0x47d2f7
push ecx
mov edx, eax
mov ecx, edi
call fcn.0047c180
add esp, 4
mov edx, dword [esp + 0xc]
push dword [esp + 0x24]
push dword [ebp + 0x10]
movsx eax, word [edx + 0x2a]
sub esi, eax
dec esi
push esi
mov esi, dword [esp + 0x28]
mov ecx, esi
push edx
mov edx, dword [esp + 0x78]
push 1
push 0
push 0x74
call fcn.00495df0
mov ecx, dword [esp + 0x28]
add esp, 0x1c
movsx eax, word [ecx + 0x2a]
inc eax
cmp eax, 1
jne 0x47d3b4
mov ecx, dword [esp + 0x28]
test ecx, ecx
je 0x47d351
mov al, byte [esi + 0x13]
cmp al, 8
jae 0x47d351
movzx eax, al
mov dword [esi + eax*4 + 0x90], ecx
inc byte [esi + 0x13]
mov ecx, dword [esp + 0xc]
cmp dword [esp + 0x60], 0
jne 0x47d965
mov ecx, dword [ecx + 0x38]
test ecx, ecx
je 0x47d383
push dword [esp + 0x74]
mov edx, 0x49
mov ecx, edi
push 0
call fcn.00446560
mov eax, dword [esp + 0x14]
add esp, 8
mov ecx, dword [eax + 0x38]
mov eax, dword [esp + 0x64]
test eax, eax
js 0x47d4b9
cmp byte [esp + 0x13], 0
je 0x47d3c5
mov esi, dword [esp + 0x18]
mov edx, 0x5a
push esi
push eax
push dword [esp + 0x44]
mov ecx, edi
call fcn.00446430
add esp, 0xc
jmp 0x47d43d
cmp eax, dword [esi + 0x1c]
jle 0x47d355
mov dword [esi + 0x1c], eax
mov eax, dword [esp + 0x28]
mov dword [esi + 0x20], eax
jmp 0x47d355
cmp dword [esp + 0x44], 0
je 0x47d3ea
mov esi, dword [esp + 0x18]
mov edx, 0x4e
add eax, dword [esp + 0x80]
mov ecx, edi
push esi
push eax
call fcn.00446560
add esp, 8
jmp 0x47d43d
mov edx, dword [esp + 0x54]
lea eax, [eax + eax*2]
mov edx, dword [edx + eax*8 + 4]
cmp byte [edx], 0x6e
jne 0x47d42b
test ecx, ecx
jne 0x47d42b
push dword [esp + 0x88]
lea edx, [ecx + 0x79]
mov ecx, edi
push dword [esp + 0x1c]
push dword [esp + 0x64]
call fcn.00446430
mov esi, dword [esp + 0x24]
add esp, 0xc
mov dword [esp + 0x30], 1
jmp 0x47d50b
push dword [esp + 0x18]
mov ecx, esi
call fcn.004635e0
mov esi, dword [esp + 0x1c]
add esp, 4
mov eax, dword [esp + 0xc]
mov ecx, edi
cmp dword [eax + 0x38], 0
jne 0x47d486
push esi
mov edx, 0x33
call fcn.00446500
add esp, 4
mov edx, 0x79
mov ecx, edi
mov esi, eax
push dword [esp + 0x88]
push dword [esp + 0x1c]
push dword [esp + 0x64]
call fcn.00446430
add esp, 0xc
mov edx, esi
mov ecx, edi
call fcn.00446ec0
mov esi, dword [esp + 0x18]
jmp 0x47d49b
mov eax, dword [edi + 0x6c]
mov edx, 0x32
add eax, 2
push eax
push esi
call fcn.00446560
add esp, 8
push esi
mov edx, 0xf
mov ecx, edi
call fcn.00446500
mov esi, dword [esp + 0x1c]
add esp, 4
mov dword [esp + 0x30], 0
jmp 0x47d50b
test ecx, ecx
jne 0x47d4ed
cmp byte [esp + 0x94], cl
jne 0x47d4ed
push dword [esp + 0x88]
mov esi, dword [esp + 0x1c]
lea edx, [ecx + 0x79]
push esi
push dword [esp + 0x64]
mov ecx, edi
call fcn.00446430
add esp, 0xc
mov dword [esp + 0x30], 1
jmp 0x47d50b
mov esi, dword [esp + 0x18]
mov edx, 0x49
push esi
push 0
mov ecx, edi
call fcn.00446560
add esp, 8
mov dword [esp + 0x30], 0
mov eax, dword [esp + 0x88]
test eax, eax
jle 0x47d52e
push esi
mov esi, dword [esp + 0x20]
mov edx, 0x98
push eax
mov ecx, dword [esi + 8]
call fcn.00446560
add esp, 8
jmp 0x47d532
mov esi, dword [esp + 0x1c]
mov ecx, dword [esp + 0xc]
xor eax, eax
xor edx, edx
mov dword [esp + 0x60], 0
mov dword [esp + 0x18], eax
cmp dx, word [ecx + 0x2a]
jge 0x47d6a8
xor ecx, ecx
mov dword [esp + 0x20], ecx
mov edx, dword [esp + 0x40]
add edx, eax
mov eax, dword [esp + 0xc]
movsx eax, word [eax + 0x28]
cmp dword [esp + 0x18], eax
jne 0x47d5bf
mov ecx, dword [edi + 0x6c]
cmp dword [edi + 0x70], ecx
jg 0x47d58b
push 0
push 0
push edx
mov edx, 0x4a
mov ecx, edi
call fcn.004463f0
add esp, 0xc
jmp 0x47d67f
lea eax, [ecx + 1]
mov dword [edi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edi + 0x68]
mov dword [eax + ecx*4], 0x4a
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
jmp 0x47d67b
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x47d5fb
mov eax, dword [esp + 0xc]
mov esi, dword [esp + 0x60]
mov eax, dword [eax + 4]
mov cl, byte [eax + ecx + 0xf]
and cl, 2
je 0x47d5e0
or edx, 0xffffffff
jmp 0x47d5e6
mov edx, dword [esp + 0x18]
sub edx, esi
lea eax, [esi + 1]
test cl, cl
cmove eax, esi
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x14]
lea esi, [eax + 4]
jmp 0x47d626
xor edx, edx
lea ecx, [eax + 4]
cmp dword [ecx], edx
jle 0x47d630
mov eax, dword [eax]
mov edi, dword [esp + 0x18]
add eax, 4
nop dword [eax]
mov esi, ecx
cmp dword [eax], edi
je 0x47d61e
inc edx
add eax, 8
cmp edx, dword [ecx]
jl 0x47d610
mov edi, dword [esp + 0x2c]
mov eax, dword [esp + 0x14]
mov ecx, esi
test edx, edx
js 0x47d861
cmp dword [esp + 0x34], 0
je 0x47d861
test eax, eax
je 0x47d647
cmp edx, dword [ecx]
jge 0x47d861
cmp byte [esp + 0x13], 0
je 0x47d770
mov ecx, dword [edi + 0x6c]
cmp dword [edi + 0x70], ecx
jg 0x47d734
mov esi, dword [esp + 0x40]
add esi, dword [esp + 0x18]
push esi
push edx
push dword [esp + 0x44]
mov edx, 0x5a
mov ecx, edi
call fcn.004463f0
add esp, 0xc
mov esi, dword [esp + 0x1c]
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x20]
inc dword [esp + 0x18]
add ecx, 0x10
mov dword [esp + 0x20], ecx
movsx eax, word [eax + 0x2a]
cmp dword [esp + 0x18], eax
mov eax, dword [esp + 0x18]
jl 0x47d556
mov ecx, dword [esp + 0xc]
cmp dword [ecx + 0x38], 0
je 0x47d88c
mov esi, dword [ecx + 0x40]
test esi, esi
je 0x47d6cb
mov eax, dword [esp + 0x50]
nop dword [eax]
cmp dword [esi], eax
je 0x47d6cb
mov esi, dword [esi + 0x18]
test esi, esi
jne 0x47d6c0
mov edx, ecx
mov ecx, dword [esp + 0x1c]
call fcn.0049ac30
mov eax, dword [esp + 0xc]
mov edx, 0xa
push 0xfffffffffffffff4
push esi
push dword [esp + 0x7c]
movsx eax, word [eax + 0x2a]
mov ecx, edi
add eax, 2
push eax
push 1
call fcn.00446820
mov eax, dword [edi + 0x6c]
add esp, 0x14
test eax, eax
jle 0x47d71d
mov ecx, dword [ebp + 0x10]
mov esi, 2
movzx edx, cx
cmp ecx, 0xb
lea ecx, [eax + eax*4]
mov eax, dword [edi + 0x68]
cmove edx, esi
mov word [eax + ecx*4 - 0x12], dx
mov esi, dword [esp + 0x1c]
mov ecx, esi
mov eax, dword [esi + 0x74]
test eax, eax
cmovne ecx, eax
mov byte [ecx + 0x15], 1
jmp 0x47d965
mov esi, dword [esp + 0x3c]
lea eax, [ecx + 1]
mov dword [edi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edi + 0x68]
mov edi, dword [esp + 0x2c]
mov dword [eax + ecx*4 + 4], esi
mov esi, dword [esp + 0x40]
add esi, dword [esp + 0x18]
mov dword [eax + ecx*4], 0x5a
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], esi
mov dword [eax + ecx*4 + 0x10], 0
jmp 0x47d67b
cmp dword [esp + 0x44], 0
je 0x47d7dc
mov eax, dword [esp + 0x80]
cmp eax, dword [esp + 0x40]
je 0x47d67b
mov esi, dword [esp + 0x40]
add edx, eax
mov ecx, dword [edi + 0x6c]
add esi, dword [esp + 0x18]
cmp dword [edi + 0x70], ecx
jg 0x47d7a8
push 0
push esi
push edx
mov edx, 0x4f
jmp 0x47d671
lea eax, [ecx + 1]
mov dword [edi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edi + 0x68]
mov edi, dword [esp + 0x2c]
mov dword [eax + ecx*4], 0x4f
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], esi
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
jmp 0x47d67b
mov ecx, dword [esp + 0x54]
lea eax, [edx + edx*2]
mov edx, dword [ecx + eax*8 + 4]
test edx, edx
je 0x47d815
cmp byte [edx], 0xa4
jne 0x47d815
mov esi, dword [esp + 0x40]
add esi, dword [esp + 0x18]
push esi
mov esi, dword [esp + 0x20]
push dword [edx + 0x1c]
mov edx, 0x4e
mov ecx, dword [esi + 8]
call fcn.00446560
add esp, 8
jmp 0x47d67f
mov esi, dword [esp + 0x40]
add esi, dword [esp + 0x18]
push esi
mov esi, dword [esp + 0x20]
mov ecx, esi
call fcn.004622f0
mov edi, dword [esp + 0x30]
mov edx, eax
mov eax, dword [esp + 0x44]
add esp, 4
add eax, dword [esp + 0x18]
cmp edx, eax
je 0x47d67f
mov ecx, dword [esi + 8]
test ecx, ecx
je 0x47d67f
push eax
push edx
mov edx, 0x4f
call fcn.00446560
add esp, 8
jmp 0x47d67f
mov eax, dword [esp + 0xc]
mov esi, dword [esp + 0x40]
add esi, dword [esp + 0x18]
push esi
mov edx, dword [eax + 4]
mov eax, dword [esp + 0x24]
mov esi, dword [esp + 0x20]
mov ecx, esi
mov edx, dword [edx + eax + 4]
call fcn.00463640
add esp, 4
jmp 0x47d67f
push dword [esp + 0x48]
lea eax, [esp + 0xc4]
mov edx, ecx
push 0
push eax
push dword [esp + 0x30]
mov eax, dword [esp + 0x74]
mov ecx, esi
push dword [ebp + 0x10]
shr eax, 0x1f
xor al, 1
movzx eax, al
push eax
push 0
push dword [esp + 0x90]
push dword [esp + 0xa4]
push dword [esp + 0x80]
push dword [esp + 0xa4]
call fcn.0047de40
mov edx, dword [esp + 0x38]
add esp, 0x2c
mov ecx, esi
push 0
push 0
push dword [esp + 0x7c]
push 0
call fcn.0047a0d0
add esp, 0x10
cmp dword [esp + 0xc0], 0
je 0x47d932
cmp dword [esp + 0x68], 0
jne 0x47d92e
mov eax, dword [esp + 0x50]
mov eax, dword [eax + 0x20]
and eax, 0x4000
or eax, 0
je 0x47d932
mov eax, dword [esp + 0xc]
push 0
mov ecx, dword [eax + 0x48]
mov edx, dword [eax]
add ecx, 0x38
call fcn.00429130
add esp, 4
cmp dword [eax + 8], 0
je 0x47d932
xor eax, eax
jmp 0x47d937
mov eax, 1
mov edx, dword [esp + 0xc]
mov ecx, esi
push eax
push dword [esp + 0x34]
push 0
push dword [esp + 0x88]
push dword [esp + 0x84]
push dword [esp + 0x98]
push dword [esp + 0x74]
call fcn.0047f840
add esp, 0x1c
mov edx, dword [esp + 0x90]
test edx, edx
je 0x47d9c1
mov ecx, dword [edi + 0x6c]
cmp dword [edi + 0x70], ecx
jg 0x47d98e
push 0
push 1
push edx
mov edx, 0x53
mov ecx, edi
call fcn.004463f0
add esp, 0xc
jmp 0x47d9c1
mov esi, dword [esp + 0x1c]
lea eax, [ecx + 1]
mov dword [edi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edi + 0x68]
mov dword [eax + ecx*4], 0x53
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], 1
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
cmp dword [esp + 0x68], 0
je 0x47d9f6
mov ecx, dword [esp + 0xc]
push dword [esp + 0x24]
mov edx, dword [esp + 0x44]
push dword [ebp + 0x10]
movsx eax, word [ecx + 0x2a]
sub edx, eax
sub edx, 2
push edx
mov edx, dword [esp + 0x74]
push ecx
push 2
push 0
push 0x74
mov ecx, esi
call fcn.00495df0
add esp, 0x1c
mov ecx, dword [edi + 0xc]
mov edx, dword [esp + 0x24]
not edx
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x47da14
push edx
mov edx, edi
call fcn.00446ac0
add esp, 4
jmp 0x47da1d
mov ecx, dword [ecx + 0x40]
mov eax, dword [edi + 0x6c]
mov dword [ecx + edx*4], eax
cmp byte [esp + 0x13], 0
je 0x47db01
mov ecx, dword [edi + 0x6c]
cmp dword [edi + 0x70], ecx
jg 0x47da4c
mov edx, dword [esp + 0x78]
mov ecx, edi
push 0
push edx
push dword [esp + 0x44]
mov edx, 5
call fcn.004463f0
add esp, 0xc
jmp 0x47da7f
mov edx, dword [esp + 0x3c]
lea eax, [ecx + 1]
mov dword [edi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edi + 0x68]
mov dword [eax + ecx*4 + 4], edx
mov edx, dword [esp + 0x78]
mov dword [eax + ecx*4], 5
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [esp + 0x8c]
mov edx, dword [edi + 0x6c]
test ecx, ecx
jns 0x47da90
lea ecx, [edx - 1]
mov eax, dword [edi]
cmp byte [eax + 0x51], 0
je 0x47da9f
mov eax, 0x57ad14
jmp 0x47daa8
mov eax, dword [edi + 0x68]
lea ecx, [ecx + ecx*4]
lea eax, [eax + ecx*4]
mov dword [eax + 8], edx
mov ecx, dword [edi + 0x6c]
cmp dword [edi + 0x70], ecx
jg 0x47dacc
push 0
push 0
push dword [esp + 0x44]
mov edx, 0x75
mov ecx, edi
call fcn.004463f0
add esp, 0xc
jmp 0x47db3f
mov edx, dword [esp + 0x3c]
lea eax, [ecx + 1]
mov dword [edi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edi + 0x68]
mov dword [eax + ecx*4], 0x75
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
jmp 0x47db3f
cmp dword [esp + 0x44], 0
je 0x47db3f
mov edx, dword [esp + 0x78]
mov ecx, edi
call fcn.004465d0
mov ecx, dword [esp + 0x8c]
mov edx, dword [edi + 0x6c]
test ecx, ecx
jns 0x47db24
lea ecx, [edx - 1]
mov eax, dword [edi]
cmp byte [eax + 0x51], 0
je 0x47db33
mov eax, 0x57ad14
jmp 0x47db3c
mov eax, dword [edi + 0x68]
lea ecx, [ecx + ecx*4]
lea eax, [eax + ecx*4]
mov dword [eax + 8], edx
cmp byte [esi + 0x12], 0
jne 0x47db58
cmp dword [esi + 0x78], 0
jne 0x47db58
cmp dword [esi + 0x70], 0
je 0x47db58
mov ecx, esi
call fcn.0047c4a0
mov edx, dword [esp + 0x90]
test edx, edx
je 0x47dbda
mov ecx, dword [edi + 0x6c]
cmp dword [edi + 0x70], ecx
jg 0x47db81
push 0
push 1
push edx
mov edx, 0x51
mov ecx, edi
call fcn.004463f0
add esp, 0xc
jmp 0x47dbb0
lea eax, [ecx + 1]
mov dword [edi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edi + 0x68]
mov dword [eax + ecx*4], 0x51
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], 1
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov edx, 1
mov ecx, edi
call fcn.00448720
mov eax, dword [edi]
cmp byte [eax + 0x51], 0
jne 0x47dbda
mov ecx, dword [edi + 0x74]
mov edx, str.rows_inserted
push 0
push 1
push 0xffffffffffffffff
call fcn.004456b0
add esp, 0xc
mov edi, dword [esp + 0x14]
mov esi, dword [esp + 0x50]
mov ecx, esi
mov edx, dword [esp + 0x6c]
call fcn.00471680
mov eax, dword [esp + 0x54]
test eax, eax
je 0x47dbfe
mov edx, eax
mov ecx, esi
call fcn.0045edb0
mov ecx, dword [esp + 0x48]
test ecx, ecx
je 0x47dcea
mov edx, dword [ecx]
test edx, edx
je 0x47dc1b
mov ecx, esi
call fcn.0045edb0
mov ecx, dword [esp + 0x48]
mov edx, dword [ecx + 4]
test edx, edx
je 0x47dc2d
mov ecx, esi
call fcn.0045dbe0
mov ecx, dword [esp + 0x48]
mov edx, dword [ecx + 8]
test edx, edx
je 0x47dc3f
mov ecx, esi
call fcn.0045edb0
mov ecx, dword [esp + 0x48]
mov edx, dword [ecx + 0xc]
test edx, edx
je 0x47dc51
mov ecx, esi
call fcn.0045dbe0
mov ecx, dword [esp + 0x48]
test esi, esi
je 0x47dc8c
cmp dword [esi + 0x1e0], 0
je 0x47dc6c
mov edx, ecx
mov ecx, esi
call fcn.00423550
jmp 0x47dcea
cmp ecx, dword [esi + 0x130]
jb 0x47dc8c
cmp ecx, dword [esi + 0x134]
jae 0x47dc8c
mov eax, dword [esi + 0x12c]
mov dword [ecx], eax
mov dword [esi + 0x12c], ecx
jmp 0x47dcea
cmp dword [0x577a68], 0
je 0x47dce0
mov eax, dword [0x57adf8]
test eax, eax
je 0x47dca8
push eax
call dword [0x577ac4]
add esp, 4
push dword [esp + 0x48]
call dword [0x577aa0]
sub dword [0x57ad28], eax
add esp, 4
dec dword [0x57ad4c]
push dword [esp + 0x48]
call dword [0x577a98]
mov eax, dword [0x57adf8]
add esp, 4
test eax, eax
je 0x47dcea
push eax
call dword [0x577acc]
jmp 0x47dce7
push ecx
call dword [0x577a98]
add esp, 4
mov eax, dword [esp + 0x44]
test eax, eax
je 0x47dd00
push 1
mov edx, eax
mov ecx, esi
call fcn.00487ba0
add esp, 4
mov edx, edi
mov ecx, esi
call fcn.00471070
mov edi, dword [esp + 0x7c]
test edi, edi
je 0x47ddde
test esi, esi
je 0x47dd71
cmp dword [esi + 0x1e0], 0
je 0x47dd3f
mov edx, edi
mov ecx, esi
call fcn.00423550
pop edi
pop esi
mov ecx, dword [esp + 0xd4]
xor ecx, esp
call fcn.00517154
mov esp, ebp
pop ebp
ret
cmp edi, dword [esi + 0x130]
jb 0x47dd71
cmp edi, dword [esi + 0x134]
jae 0x47dd71
mov eax, dword [esi + 0x12c]
mov dword [edi], eax
mov dword [esi + 0x12c], edi
pop edi
pop esi
mov ecx, dword [esp + 0xd4]
xor ecx, esp
call fcn.00517154
mov esp, ebp
pop ebp
ret
cmp dword [0x577a68], 0
je 0x47ddd4
mov eax, dword [0x57adf8]
test eax, eax
je 0x47dd8d
push eax
call dword [0x577ac4]
add esp, 4
push edi
call dword [0x577aa0]
sub dword [0x57ad28], eax
add esp, 4
dec dword [0x57ad4c]
push edi
call dword [0x577a98]
mov eax, dword [0x57adf8]
add esp, 4
test eax, eax
je 0x47ddde
push eax
call dword [0x577acc]
add esp, 4
pop edi
pop esi
mov ecx, dword [esp + 0xd4]
xor ecx, esp
call fcn.00517154
mov esp, ebp
pop ebp
ret
push edi
call dword [0x577a98]
add esp, 4
mov ecx, dword [esp + 0xdc]
pop edi
pop esi
xor ecx, esp
call fcn.00517154
mov esp, ebp
pop ebp
ret