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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x8c
xor ecx, ecx
or eax, 0xffffffff
push ebx
mov dword [esp + 0x38], eax
mov dword [esp + 0x40], eax
mov eax, dword [ebp + 8]
push esi
push edi
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x70], ecx
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x30], ecx
mov dword [esp + 0x38], ecx
mov dword [esp + 0x44], ecx
mov dword [esp + 0x28], ecx
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x60], ecx
mov dword [esp + 0x50], ecx
mov dword [esp + 0x68], ecx
cmp dword [eax + 0x18], ecx
jne 0x463305
cmp dword [0x4f0384], ecx
je 0x462188
cmp dword [0x4f0390], ecx
jg 0x463305
mov edx, dword [ebp + 0xc]
mov eax, dword [eax]
mov dword [esp + 0x5c], eax
cmp dword [edx + 8], ecx
je 0x463305
mov ecx, dword [ebp + 8]
mov eax, edx
push eax
push ecx
call fcn.0045cdc0
add esp, 8
mov dword [esp + 0x14], eax
test eax, eax
je 0x463305
mov ebx, dword [esp + 0x5c]
mov edi, eax
mov esi, dword [edi + 0x3c]
mov ecx, ebx
call fcn.0042c380
mov ecx, dword [edi]
mov edi, dword [ebp + 8]
mov dword [esp + 0x6c], eax
lea edx, [eax + eax*2]
mov eax, dword [ebx + 4]
lea eax, [eax + edx*8]
mov dword [esp + 0x34], eax
mov eax, dword [eax]
push eax
push 0
push ecx
push 0x12
call fcn.0045cd30
add esp, 0x10
test eax, eax
jne 0x463305
mov esi, dword [esp + 0x14]
push eax
push 0x64
mov eax, esi
call fcn.0044c850
xor edx, edx
cmp dword [esi + 0x18], edx
mov dword [esp + 0x34], eax
setne dl
push eax
mov eax, esi
mov ecx, edi
mov dword [esp + 0x30], edx
call fcn.0045ce20
add esp, 0xc
test eax, eax
jne 0x463305
cmp dword [esp + 0x24], eax
je 0x462242
mov eax, esi
push eax
mov ecx, edi
push ecx
call fcn.0043fae0
add esp, 8
test eax, eax
jne 0x463305
mov esi, edi
call fcn.00456a60
mov ebx, eax
mov dword [esp + 0x58], ebx
test ebx, ebx
je 0x463305
cmp byte [esi + 0x13], 0
jne 0x462264
mov byte [ebx + 0x236], 1
mov edi, dword [ebp + 0x14]
test edi, edi
jne 0x462275
cmp dword [esp + 0x2c], edi
jne 0x462275
xor eax, eax
jmp 0x46227a
mov eax, 1
push eax
mov eax, dword [esp + 0x70]
mov ecx, esi
call fcn.00441e90
add esp, 4
cmp dword [esp + 0x2c], 0
je 0x46229b
mov eax, dword [esi + 0x1c]
mov dword [esp + 0x48], eax
inc eax
mov dword [esi + 0x1c], eax
mov edx, dword [esp + 0x14]
cmp byte [edx + 0x20], 0
je 0x46246d
mov eax, dword [ebx + 0x10]
mov ecx, dword [esp + 0x34]
mov edi, dword [esi + 0x1c]
mov dword [esp + 0x20], eax
mov eax, dword [esi + 0x20]
mov dword [esp + 0x68], eax
inc eax
mov dword [esp + 0x50], eax
inc eax
mov dword [esi + 0x20], eax
mov eax, dword [esp + 0x6c]
mov edx, dword [ecx + 0x14]
push 0x17
push eax
mov eax, dword [edx + 0x74]
push edi
mov ecx, esi
mov dword [esp + 0x1c], edi
call fcn.0045ce80
mov eax, dword [esp + 0x2c]
add eax, 0xd
add esp, 0xc
push eax
mov dword [esp + 0x68], eax
push edi
push 0x33
mov eax, ebx
call fcn.00439cf0
add esp, 0xc
push 0
push edi
push 0x62
mov eax, ebx
call fcn.00439cf0
mov ecx, dword [esp + 0x20]
mov esi, dword [ebx + 0x10]
mov edx, dword [ecx]
add esp, 0xc
lea ecx, [esi + 1]
mov dword [esp + 0x18], edx
mov dword [ebx + 0x10], ecx
cmp dword [ebx + 0x14], esi
jg 0x462340
mov edi, ebx
call fcn.00439c40
xor edi, edi
cmp dword [0x4f0384], edi
je 0x462342
cmp dword [0x4f0390], edi
jle 0x462342
xor esi, esi
jmp 0x462361
xor edi, edi
mov ecx, dword [ebx + 0x18]
lea eax, [esi + esi*4]
lea eax, [ecx + eax*4]
mov byte [eax], 0x56
mov dword [eax + 4], edi
mov dword [eax + 8], edi
mov dword [eax + 0xc], edi
mov dword [eax + 0x10], edi
mov byte [ebx + 0x238], 0
mov ecx, dword [ebx + 0x18]
mov eax, esi
cmp ecx, edi
je 0x4623d3
cmp dword [0x4f0384], edi
je 0x46237a
cmp dword [0x4f0390], edi
jg 0x4623d3
cmp esi, edi
jl 0x462383
cmp esi, dword [ebx + 0x10]
jl 0x462389
mov eax, dword [ebx + 0x10]
dec eax
js 0x4623d3
lea edx, [eax + eax*4]
mov eax, dword [ecx + edx*4 + 0x10]
lea esi, [ecx + edx*4]
mov ecx, dword [esi + 0xc]
call fcn.0043a020
mov eax, dword [esp + 0x18]
mov dword [esi + 0xc], edi
cmp eax, edi
jne 0x4623ae
mov dword [esi + 0xc], edi
mov dword [esi + 0x10], edi
jmp 0x4623d3
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4623b1
mov ebx, dword [esp + 0x18]
sub eax, edx
mov edi, eax
call fcn.0042d7c0
mov ebx, dword [esp + 0x58]
mov dword [esi + 0xc], eax
mov dword [esi + 0x10], 0xffffffff
mov edi, dword [esp + 0x20]
lea eax, [edi + 0xc]
push eax
push 0x100
push 0x42
mov eax, ebx
call fcn.00439cf0
mov esi, dword [esp + 0x1c]
add esp, 0xc
push 0
push esi
push 0x57
mov eax, ebx
call fcn.00439cf0
mov ecx, dword [esp + 0x74]
add esp, 0xc
push 1
push ecx
push 0x6c
mov eax, ebx
call fcn.00439cf0
add esp, 0xc
push 1
push esi
push 0x62
mov eax, ebx
call fcn.00439cf0
mov edx, dword [esp + 0x5c]
add esp, 0xc
push 1
push edx
push 0x6c
mov eax, ebx
call fcn.00439cf0
mov eax, dword [esp + 0x70]
add esp, 0xc
push eax
push 0
push 0x5c
mov eax, ebx
call fcn.00439cf0
add esp, 0xc
add edi, 4
push edi
push esi
push 0x6d
mov eax, ebx
call fcn.00439cf0
add esp, 0xc
push 0
push esi
push 0x67
mov eax, ebx
call fcn.00439cf0
mov edi, dword [ebp + 0x14]
mov esi, dword [ebp + 8]
add esp, 0xc
xor eax, eax
cmp edi, eax
je 0x4625e0
push eax
push eax
push 0x5c
mov eax, ebx
call fcn.00439cf0
mov ecx, dword [ebx + 0x10]
mov dword [esp + 0x24], eax
add esp, 0xc
mov eax, ebx
mov dword [esp + 0x44], ecx
call fcn.00439d90
push 0
push 0
push 0
push 0
push eax
push 9
push edi
push esi
mov dword [esp + 0x3c], eax
call fcn.00458990
add esp, 0x20
test eax, eax
jne 0x463305
cmp dword [esi + 0x18], eax
jne 0x463305
call fcn.0042e5a0
test eax, eax
jne 0x463305
mov eax, ebx
call fcn.00439d90
push eax
mov dword [esp + 0x2c], eax
push 0
push 0x5c
mov eax, ebx
call fcn.00439cf0
mov edx, dword [edi]
mov eax, dword [edx]
add esp, 0xc
cmp dword [esp + 0x2c], 0
mov dword [esp + 0x20], eax
jne 0x462514
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0x14]
mov edx, dword [eax + 0x3c]
push ecx
push edx
push edi
call fcn.004620b0
add esp, 0xc
test eax, eax
je 0x4625d0
mov edi, dword [esi + 0x1c]
mov edx, dword [esp + 0x1c]
lea eax, [edi + 1]
mov ecx, ebx
mov dword [esp + 0x30], 1
mov dword [esp + 0x38], edi
mov dword [esi + 0x1c], eax
call fcn.00439de0
mov esi, dword [esp + 0x20]
push 0
push esi
push 0x5a
mov eax, ebx
call fcn.00439cf0
add esp, 0xc
push 0
push edi
push 0x2d
mov eax, ebx
call fcn.00439cf0
add esp, 0xc
push 0
push 1
push 0x6a
mov eax, ebx
call fcn.00439cf0
add esp, 0xc
push 0
push edi
push 0x61
mov eax, ebx
call fcn.00439cf0
add esp, 0xc
push 0
push 0
push 0x30
mov eax, ebx
call fcn.00439cf0
mov eax, dword [esp + 0x24]
add esp, 0xc
mov ecx, ebx
call fcn.0043a000
push 0
push edi
push 0x21
mov eax, ebx
call fcn.00439cf0
add esp, 0xc
push esi
push edi
push 0x11
mov eax, ebx
call fcn.00439cf0
mov ecx, dword [esp + 0x50]
add esp, 0xc
push ecx
push 0
push 0x5c
mov eax, ebx
call fcn.00439cf0
mov edx, dword [esp + 0x34]
add esp, 0xc
mov ecx, ebx
call fcn.00439de0
jmp 0x462672
mov eax, dword [esp + 0x18]
mov ecx, ebx
call fcn.0043a000
jmp 0x462672
mov edx, dword [ebp + 0x10]
mov ecx, dword [edx]
mov dword [esp + 0x74], eax
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], eax
mov dword [esp + 0x74], esi
mov dword [esp + 0x38], 0xffffffff
mov dword [esp + 0x30], eax
mov dword [esp + 0x20], ecx
mov dword [esp + 0x10], eax
cmp ecx, eax
jle 0x462672
mov dword [esp + 0x18], eax
jmp 0x462640
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0xc]
mov edx, dword [esp + 0x18]
mov edi, dword [edx + ecx]
lea esi, [esp + 0x74]
call fcn.0045b280
test eax, eax
jne 0x463305
mov eax, dword [esp + 0x10]
add dword [esp + 0x18], 0xc
inc eax
mov dword [esp + 0x10], eax
cmp eax, dword [esp + 0x20]
jl 0x462640
mov ecx, dword [ebp + 0x18]
test ecx, ecx
jne 0x4626aa
mov edx, dword [esp + 0x14]
mov eax, dword [edx + 4]
mov ecx, dword [esp + 0x20]
cmp ecx, eax
je 0x4627da
push ecx
mov ecx, dword [ebp + 8]
push eax
mov eax, dword [ebp + 0xc]
push 0
push eax
push str.table__S_has__d_columns_but__d_values_were_supplied
push ecx
call fcn.0042da10
add esp, 0x18
jmp 0x463305
mov edx, dword [ecx + 4]
mov eax, dword [esp + 0x20]
cmp eax, edx
je 0x4626cd
push edx
mov edx, dword [ebp + 8]
push eax
push str._d_values_for__d_columns
push edx
call fcn.0042da10
add esp, 0x10
jmp 0x463305
xor eax, eax
test edx, edx
jle 0x4626e2
or edx, 0xffffffff
mov esi, dword [ecx]
mov dword [esi + eax*8 + 4], edx
inc eax
cmp eax, dword [ecx + 4]
jl 0x4626d6
cmp dword [ecx + 4], 0
mov dword [esp + 0x10], 0
jle 0x4627e1
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 4]
xor edi, edi
mov dword [esp + 0x18], eax
test eax, eax
jle 0x46273c
mov ecx, dword [ebp + 0x18]
mov edx, dword [ecx]
mov eax, dword [esp + 0x10]
mov ecx, dword [edx + eax*8]
lea eax, [edx + eax*8]
mov edx, dword [esp + 0x14]
mov esi, dword [edx + 8]
mov dword [esp + 0x54], eax
mov dword [esp + 0x64], ecx
mov edx, dword [esi]
mov ecx, dword [esp + 0x64]
call fcn.0042db20
test eax, eax
je 0x462798
inc edi
add esi, 0x14
cmp edi, dword [esp + 0x18]
jl 0x462723
mov esi, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
cmp edi, dword [edx + 4]
jl 0x462785
mov eax, dword [ebp + 0x18]
mov ecx, dword [eax]
mov edi, dword [ecx + esi*8]
mov edx, str._ROWID_
mov ecx, edi
call fcn.0042db20
test eax, eax
je 0x462781
mov edx, str.ROWID
mov ecx, edi
call fcn.0042db20
test eax, eax
je 0x462781
mov edx, 0x4d8164
mov ecx, edi
call fcn.0042db20
test eax, eax
jne 0x4627b2
mov dword [esp + 0x40], esi
mov edx, dword [ebp + 0x18]
inc esi
mov dword [esp + 0x10], esi
cmp esi, dword [edx + 4]
jl 0x4626f4
jmp 0x4627e1
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x14]
mov esi, dword [esp + 0x10]
mov dword [eax + 4], edi
cmp edi, dword [ecx + 0xc]
jne 0x462740
mov dword [esp + 0x40], esi
jmp 0x462740
mov eax, dword [ebp + 0x18]
mov ecx, dword [eax]
mov edx, dword [ecx + esi*8]
mov eax, dword [ebp + 0xc]
mov esi, dword [ebp + 8]
push edx
push 0
push eax
push str.table__S_has_no_column_named__s
push esi
call fcn.0042da10
add esp, 0x14
inc dword [esi + 0x18]
jmp 0x463305
mov ecx, dword [edx + 0xc]
mov dword [esp + 0x40], ecx
cmp dword [esp + 0x2c], 0
je 0x462810
mov esi, dword [esp + 0x48]
push 0
push esi
push 0x15
mov eax, ebx
call fcn.00439cf0
mov edx, dword [esp + 0x20]
mov eax, dword [edx + 4]
add esp, 0xc
push eax
push esi
push 0x11
mov eax, ebx
call fcn.00439cf0
add esp, 0xc
mov ecx, dword [esp + 0x5c]
test byte [ecx + 8], 0x80
mov esi, dword [ebp + 8]
je 0x462839
mov eax, dword [esi + 0x20]
push eax
lea edx, [eax + 1]
mov dword [esp + 0x64], eax
push 0
push 0x5d
mov eax, ebx
mov dword [esi + 0x20], edx
call fcn.00439cf0
add esp, 0xc
cmp dword [esp + 0x2c], 0
jne 0x462857
mov eax, dword [esi + 0x1c]
push 0x16
push eax
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x1c]
push esi
call fcn.004648b0
add esp, 0xc
cmp dword [esp + 0x30], 0
je 0x462884
mov eax, ebx
call fcn.00439d90
push eax
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x3c]
push eax
push 0x33
mov eax, ebx
call fcn.00439cf0
mov ecx, dword [ebx + 0x10]
add esp, 0xc
mov dword [esp + 0x70], ecx
jmp 0x4628a8
cmp dword [ebp + 0x14], 0
je 0x4628a8
mov edx, dword [esp + 0x44]
push edx
push 0
push 0x5c
mov eax, ebx
call fcn.00439cf0
mov edx, dword [esp + 0x28]
add esp, 0xc
mov ecx, ebx
call fcn.00439de0
mov eax, ebx
call fcn.00439d90
test byte [esp + 0x2c], 1
mov dword [esp + 0x18], eax
je 0x462a9c
mov eax, dword [esp + 0x40]
test eax, eax
jns 0x4628ce
push 0
push 0xffffffffffffffff
push 0x2a
jmp 0x462930
cmp dword [esp + 0x30], 0
je 0x4628df
push eax
mov eax, dword [esp + 0x3c]
push eax
push 0x62
jmp 0x462930
mov edx, dword [ebp + 0x10]
lea ecx, [eax + eax*2]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + ecx*4]
mov edx, dword [ebp + 8]
push ecx
push edx
call fcn.0045b740
mov eax, dword [ebx + 0x10]
add eax, 3
push eax
push 0xffffffffffffffff
push 0x41
mov eax, ebx
call fcn.00439cf0
add esp, 0x14
push 0
push 1
push 0x1a
mov eax, ebx
call fcn.00439cf0
add esp, 0xc
push 0
push 0xffffffffffffffff
push 0x2a
mov eax, ebx
call fcn.00439cf0
add esp, 0xc
push 0
push 0
push 0x70
mov eax, ebx
call fcn.00439cf0
mov ecx, dword [esp + 0x20]
add esp, 0xc
cmp dword [ecx + 4], 0
mov dword [esp + 0x10], 0
jle 0x462a3a
mov dword [esp + 0x1c], 0
mov ecx, dword [ebp + 0x18]
test ecx, ecx
jne 0x46297e
mov eax, dword [esp + 0x10]
cmp dword [esp + 0x30], 0
je 0x4629be
mov ecx, dword [esp + 0x38]
push eax
push ecx
push 0x62
mov eax, ebx
call fcn.00439cf0
jmp 0x462a1c
mov edx, dword [ecx + 4]
xor eax, eax
test edx, edx
jle 0x46299c
mov ecx, dword [ecx]
mov esi, dword [esp + 0x10]
add ecx, 4
cmp dword [ecx], esi
je 0x46299c
inc eax
add ecx, 8
cmp eax, edx
jl 0x462990
cmp eax, edx
jl 0x462963
mov edx, dword [esp + 0x14]
mov eax, dword [edx + 8]
mov ecx, dword [esp + 0x1c]
mov edx, dword [eax + ecx + 4]
mov eax, dword [ebp + 8]
push edx
push eax
call fcn.0045b740
add esp, 8
jmp 0x462a1f
lea edx, [eax + eax*2]
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0xc]
mov esi, dword [ecx + edx*4]
mov edx, dword [ebp + 8]
mov edi, dword [edx + 0xc]
test edi, edi
je 0x462a1f
mov eax, dword [edi + 0x10]
mov ecx, edx
push esi
push ecx
mov dword [esp + 0x4c], eax
call fcn.0045b740
mov edx, dword [esp + 0x4c]
inc edx
add esp, 8
cmp dword [edi + 0x10], edx
jg 0x462a01
mov eax, dword [esp + 0x44]
mov ecx, dword [edi + 0x18]
lea eax, [eax + eax*4]
cmp byte [ecx + eax*4], 0x7b
jne 0x462a1f
mov ecx, dword [ebp + 8]
mov eax, dword [ecx + 0x20]
push 0
push eax
mov dword [esi + 0x24], eax
inc dword [ecx + 0x20]
push 0x6c
mov eax, edi
call fcn.00439cf0
mov byte [esi], 0x7e
add esp, 0xc
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
add dword [esp + 0x1c], 0x14
inc eax
mov dword [esp + 0x10], eax
cmp eax, dword [edx + 4]
jl 0x462958
mov esi, dword [esp + 0x14]
mov eax, dword [esi + 4]
push 0
push eax
push 0x5a
mov eax, ebx
call fcn.00439cf0
add esp, 0xc
cmp dword [esp + 0x24], 0
jne 0x462a62
push ebx
mov eax, esi
call fcn.00461f30
add esp, 4
mov edi, dword [esp + 0x48]
push 0
push edi
push 0x61
mov eax, ebx
call fcn.00439cf0
mov ecx, dword [esp + 0x24]
mov edx, dword [ebp + 0x1c]
mov eax, dword [ebp + 8]
add esp, 0xc
push ecx
push edx
push 0xffffffffffffffff
push edi
push esi
push 1
push 0
push 0x64
push eax
call fcn.0044cd40
add esp, 0x24
test eax, eax
jne 0x463305
cmp dword [esp + 0x2c], 0
je 0x462aca
cmp dword [esp + 0x24], 0
jne 0x462cd6
mov ecx, dword [ebp + 8]
mov eax, dword [ecx + 0x1c]
push 0x16
push eax
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x1c]
push ecx
call fcn.004648b0
add esp, 0xc
jmp 0x462ad5
cmp dword [esp + 0x24], 0
jne 0x462cd6
mov edi, dword [esp + 0x40]
test edi, edi
js 0x462b76
cmp dword [esp + 0x30], 0
je 0x462afc
mov ecx, dword [esp + 0x38]
push edi
push ecx
push 0x62
mov eax, ebx
call fcn.00439cf0
add esp, 0xc
jmp 0x462b33
cmp dword [ebp + 0x14], 0
je 0x462b1a
mov edx, dword [esp + 0x20]
sub edx, edi
push 1
dec edx
push edx
push 0xa
mov eax, ebx
call fcn.00439cf0
add esp, 0xc
jmp 0x462b33
mov ecx, dword [ebp + 0x10]
mov edx, dword [ecx + 0xc]
mov ecx, dword [ebp + 8]
lea eax, [edi + edi*2]
mov eax, dword [edx + eax*4]
push eax
push ecx
call fcn.0045b740
add esp, 8
mov edx, dword [ebx + 0x10]
add edx, 3
push edx
push 0xffffffffffffffff
push 0x41
mov eax, ebx
call fcn.00439cf0
add esp, 0xc
push 0
push 1
push 0x1a
mov eax, ebx
call fcn.00439cf0
mov esi, dword [esp + 0x5c]
mov eax, dword [esp + 0x48]
add esp, 0xc
push esi
push eax
push 0x2d
mov eax, ebx
call fcn.00439cf0
add esp, 0xc
push 0
push 0
push 0x70
jmp 0x462b82
mov esi, dword [esp + 0x50]
mov ecx, dword [esp + 0x3c]
push esi
push ecx
push 0x2d
mov eax, ebx
call fcn.00439cf0
mov edx, dword [esp + 0x20]
add esp, 0xc
cmp byte [edx + 0x20], 0
je 0x462ba5
push 0
push esi
push 0x6b
mov eax, ebx
call fcn.00439cf0
add esp, 0xc
mov eax, dword [esp + 0x14]
xor esi, esi
cmp dword [eax + 4], esi
jle 0x462c85
mov edi, dword [ebp + 0x18]
mov dword [esp + 0x1c], esi
jmp 0x462bc0
cmp esi, dword [eax + 0xc]
jne 0x462bda
push 0
push 0
push 0x36
mov eax, ebx
call fcn.00439cf0
add esp, 0xc
jmp 0x462c6e
test edi, edi
jne 0x462bfb
mov eax, esi
cmp dword [esp + 0x30], 0
je 0x462c36
push eax
mov eax, dword [esp + 0x3c]
push eax
push 0x62
mov eax, ebx
call fcn.00439cf0
add esp, 0xc
jmp 0x462c6e
mov edx, dword [edi + 4]
xor eax, eax
test edx, edx
jle 0x462c1c
mov ecx, dword [edi]
add ecx, 4
lea esp, [esp]
cmp dword [ecx], esi
je 0x462c1c
inc eax
add ecx, 8
cmp eax, edx
jl 0x462c10
cmp eax, edx
jl 0x462be0
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 8]
mov eax, dword [esp + 0x1c]
mov ecx, dword [edx + eax + 4]
mov edx, dword [ebp + 8]
push ecx
push edx
jmp 0x462c66
cmp dword [ebp + 0x14], 0
je 0x462c55
mov ecx, esi
sub ecx, eax
add ecx, dword [esp + 0x20]
push 1
push ecx
push 0xa
mov eax, ebx
call fcn.00439cf0
add esp, 0xc
jmp 0x462c6e
lea edx, [eax + eax*2]
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0xc]
mov edx, dword [ecx + edx*4]
mov eax, dword [ebp + 8]
push edx
push eax
call fcn.0045b740
add esp, 8
mov eax, dword [esp + 0x14]
add dword [esp + 0x1c], 0x14
inc esi
cmp esi, dword [eax + 4]
jl 0x462bc0
mov edi, dword [esp + 0x40]
mov ecx, dword [esp + 0x18]
mov edx, dword [ebp + 0x1c]
mov esi, dword [esp + 0x3c]
push ecx
mov ecx, dword [ebp + 8]
xor eax, eax
test edi, edi
mov edi, dword [esp + 0x18]
push edx
setns al
push 0
push eax
push 0
push esi
push ecx
mov ecx, edi
call fcn.00463510
add esp, 0x1c
test byte [esp + 0x2c], 2
je 0x462cbe
mov eax, dword [esp + 0x48]
jmp 0x462cc1
or eax, 0xffffffff
mov edx, dword [ebp + 8]
push eax
push 0
push 0
push 0
push esi
push edi
push edx
call fcn.00464550
add esp, 0x1c
mov eax, dword [esp + 0x5c]
test byte [eax + 8], 0x80
je 0x462cf3
mov ecx, dword [esp + 0x60]
push ecx
push 1
push 0x38
mov eax, ebx
call fcn.00439cf0
add esp, 0xc
cmp dword [esp + 0x2c], 0
je 0x462dbe
cmp dword [esp + 0x24], 0
jne 0x462d8f
mov esi, dword [esp + 0x3c]
push 0
push esi
push 0x67
mov eax, ebx
call fcn.00439cf0
mov edx, dword [esp + 0x20]
mov eax, dword [edx + 0x10]
add esp, 0xc
mov dword [esp + 0x24], eax
test eax, eax
je 0x462d8f
inc esi
mov dword [esp + 0x1c], esi
mov esi, dword [ebx + 0x10]
lea ecx, [esi + 1]
mov dword [ebx + 0x10], ecx
cmp dword [ebx + 0x14], esi
jg 0x462d58
mov edi, ebx
call fcn.00439c40
cmp dword [0x4f0384], 0
je 0x462d58
xor ecx, ecx
cmp dword [0x4f0390], ecx
jg 0x462d7c
mov ecx, dword [ebx + 0x18]
mov edx, dword [esp + 0x1c]
lea eax, [esi + esi*4]
lea eax, [ecx + eax*4]
xor ecx, ecx
mov byte [eax], 0x67
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ecx
mov dword [eax + 0x10], ecx
mov byte [ebx + 0x238], cl
mov eax, dword [esp + 0x24]
mov eax, dword [eax + 0x20]
inc dword [esp + 0x1c]
mov dword [esp + 0x24], eax
cmp eax, ecx
jne 0x462d30
mov ecx, dword [esp + 0x18]
mov edx, dword [ebp + 0x1c]
mov eax, dword [esp + 0x48]
push ecx
mov ecx, dword [esp + 0x18]
push edx
mov edx, dword [ebp + 8]
push 0xffffffffffffffff
push eax
push ecx
push 2
push 0
push 0x64
push edx
call fcn.0044cd40
add esp, 0x24
test eax, eax
jne 0x463305
mov eax, dword [ebx + 0x24]
test eax, eax
je 0x462dd7
mov ecx, dword [esp + 0x18]
lea edx, [ecx*4 + 4]
mov ecx, dword [ebx + 0x10]
sub eax, edx
mov dword [eax], ecx
cmp dword [esp + 0x30], 0
je 0x462e1e
mov edx, dword [esp + 0x70]
mov esi, dword [esp + 0x38]
push edx
push esi
push 0x6d
mov eax, ebx
call fcn.00439cf0
mov eax, dword [ebx + 0x24]
add esp, 0xc
test eax, eax
je 0x462e0d
mov ecx, dword [esp + 0x4c]
lea edx, [ecx*4 + 4]
mov ecx, dword [ebx + 0x10]
sub eax, edx
mov dword [eax], ecx
push 0
push esi
push 0x67
mov eax, ebx
call fcn.00439cf0
add esp, 0xc
jmp 0x462e60
cmp dword [ebp + 0x14], 0
je 0x462e60
mov edx, dword [esp + 0x20]
push 0
push edx
push 0x1a
mov eax, ebx
call fcn.00439cf0
add esp, 0xc
push 0
push 0
push 0x30
mov eax, ebx
call fcn.00439cf0
mov eax, dword [ebx + 0x24]
add esp, 0xc
test eax, eax
je 0x462e60
mov ecx, dword [esp + 0x28]
lea edx, [ecx*4 + 4]
mov ecx, dword [ebx + 0x10]
sub eax, edx
mov dword [eax], ecx
cmp dword [esp + 0x2c], 0
jne 0x462ef1
mov esi, dword [esp + 0x3c]
push 0
push esi
push 0x67
mov eax, ebx
call fcn.00439cf0
mov edx, dword [esp + 0x20]
mov eax, dword [edx + 0x10]
add esp, 0xc
mov dword [esp + 0x24], eax
test eax, eax
je 0x462ef1
inc esi
mov dword [esp + 0x28], esi
mov esi, dword [ebx + 0x10]
lea ecx, [esi + 1]
mov dword [ebx + 0x10], ecx
cmp dword [ebx + 0x14], esi
jg 0x462eba
mov edi, ebx
call fcn.00439c40
cmp dword [0x4f0384], 0
je 0x462eba
xor ecx, ecx
cmp dword [0x4f0390], ecx
jg 0x462ede
mov ecx, dword [ebx + 0x18]
mov edx, dword [esp + 0x28]
lea eax, [esi + esi*4]
lea eax, [ecx + eax*4]
xor ecx, ecx
mov byte [eax], 0x67
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ecx
mov dword [eax + 0x10], ecx
mov byte [ebx + 0x238], cl
mov eax, dword [esp + 0x24]
mov eax, dword [eax + 0x20]
inc dword [esp + 0x28]
mov dword [esp + 0x24], eax
cmp eax, ecx
jne 0x462e92
mov ecx, dword [esp + 0x14]
cmp byte [ecx + 0x20], 0
je 0x46328d
mov edx, dword [ebx + 0x10]
mov ecx, dword [ebp + 8]
mov eax, dword [ecx + 0x1c]
mov esi, dword [esp + 0x6c]
mov dword [esp + 0x54], edx
mov edx, dword [esp + 0x34]
mov edx, dword [edx + 0x14]
push 0x16
push esi
mov dword [esp + 0x30], eax
push eax
mov eax, dword [edx + 0x74]
call fcn.0045ce80
mov eax, dword [ebx + 0x10]
add esp, 0xc
lea ecx, [eax + 1]
mov dword [esp + 0x10], eax
mov dword [ebx + 0x10], ecx
cmp dword [ebx + 0x14], eax
jg 0x462f57
mov edi, ebx
call fcn.00439c40
xor esi, esi
cmp dword [0x4f0384], esi
je 0x462f59
cmp dword [0x4f0390], esi
jg 0x462f80
jmp 0x462f59
xor esi, esi
mov ecx, dword [ebx + 0x18]
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x68]
lea eax, [eax + eax*4]
lea eax, [ecx + eax*4]
mov byte [eax], 0x31
mov dword [eax + 4], edx
mov dword [eax + 8], esi
mov dword [eax + 0xc], esi
mov dword [eax + 0x10], esi
mov byte [ebx + 0x238], 0
mov eax, dword [ebx + 0x10]
lea ecx, [eax + 1]
mov dword [esp + 0x10], eax
mov dword [ebx + 0x10], ecx
cmp dword [ebx + 0x14], eax
jg 0x462fa9
mov edi, ebx
call fcn.00439c40
cmp dword [0x4f0384], esi
je 0x462fa9
cmp dword [0x4f0390], esi
jg 0x462fd7
mov ecx, dword [ebx + 0x18]
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x54]
lea eax, [eax + eax*4]
lea eax, [ecx + eax*4]
add edx, 7
mov byte [eax], 0x41
mov dword [eax + 4], 0xffffffff
mov dword [eax + 8], edx
mov dword [eax + 0xc], esi
mov dword [eax + 0x10], esi
mov byte [ebx + 0x238], 0
mov eax, dword [ebx + 0x10]
lea ecx, [eax + 1]
mov dword [esp + 0x10], eax
mov dword [ebx + 0x10], ecx
cmp dword [ebx + 0x14], eax
jg 0x463000
mov edi, ebx
call fcn.00439c40
cmp dword [0x4f0384], esi
je 0x463000
cmp dword [0x4f0390], esi
jg 0x463027
mov ecx, dword [ebx + 0x18]
mov eax, dword [esp + 0x10]
lea eax, [eax + eax*4]
lea eax, [ecx + eax*4]
mov byte [eax], 0x1a
mov dword [eax + 4], 1
mov dword [eax + 8], esi
mov dword [eax + 0xc], esi
mov dword [eax + 0x10], esi
mov byte [ebx + 0x238], 0
mov eax, dword [ebx + 0x10]
lea ecx, [eax + 1]
mov dword [esp + 0x10], eax
mov dword [ebx + 0x10], ecx
cmp dword [ebx + 0x14], eax
jg 0x463050
mov edi, ebx
call fcn.00439c40
cmp dword [0x4f0384], esi
je 0x463050
cmp dword [0x4f0390], esi
jg 0x463077
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x28]
lea edx, [eax + eax*4]
mov eax, dword [ebx + 0x18]
lea eax, [eax + edx*4]
mov byte [eax], 0x2d
mov dword [eax + 4], ecx
mov dword [eax + 8], esi
mov dword [eax + 0xc], esi
mov dword [eax + 0x10], esi
mov byte [ebx + 0x238], 0
mov edx, dword [esp + 0x14]
mov eax, dword [edx]
mov dword [esp + 0x34], eax
mov eax, dword [ebx + 0x10]
lea ecx, [eax + 1]
mov dword [esp + 0x10], eax
mov dword [ebx + 0x10], ecx
cmp dword [ebx + 0x14], eax
jg 0x4630ae
mov edi, ebx
call fcn.00439c40
cmp dword [0x4f0384], esi
je 0x4630ae
cmp dword [0x4f0390], esi
jle 0x4630ae
xor eax, eax
jmp 0x4630d3
mov eax, dword [ebx + 0x18]
mov ecx, dword [esp + 0x10]
lea edx, [ecx + ecx*4]
lea eax, [eax + edx*4]
mov byte [eax], 0x56
mov dword [eax + 4], esi
mov dword [eax + 8], esi
mov dword [eax + 0xc], esi
mov dword [eax + 0x10], esi
mov byte [ebx + 0x238], 0
mov eax, ecx
mov ecx, dword [ebx + 0x18]
cmp ecx, esi
je 0x46314d
cmp dword [0x4f0384], esi
je 0x4630ea
cmp dword [0x4f0390], esi
jg 0x46314d
cmp eax, esi
jl 0x4630f3
cmp eax, dword [ebx + 0x10]
jl 0x4630f9
mov eax, dword [ebx + 0x10]
dec eax
js 0x46314d
lea edx, [eax + eax*4]
mov eax, dword [ecx + edx*4 + 0x10]
lea edi, [ecx + edx*4]
mov ecx, dword [edi + 0xc]
mov dword [esp + 0x54], edi
call fcn.0043a020
mov eax, dword [esp + 0x34]
mov dword [edi + 0xc], esi
cmp eax, esi
jne 0x463122
mov dword [edi + 0xc], esi
mov dword [edi + 0x10], esi
jmp 0x46314d
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x463125
mov ebx, dword [esp + 0x34]
sub eax, edx
mov edi, eax
call fcn.0042d7c0
mov ecx, dword [esp + 0x54]
mov ebx, dword [esp + 0x58]
mov dword [ecx + 0xc], eax
mov dword [ecx + 0x10], 0xffffffff
xor esi, esi
mov eax, dword [ebx + 0x10]
lea ecx, [eax + 1]
mov dword [esp + 0x10], eax
mov dword [ebx + 0x10], ecx
cmp dword [ebx + 0x14], eax
jg 0x463176
mov edi, ebx
call fcn.00439c40
cmp dword [0x4f0384], esi
je 0x463176
cmp dword [0x4f0390], esi
jg 0x46319d
mov ecx, dword [ebx + 0x18]
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x50]
lea eax, [eax + eax*4]
lea eax, [ecx + eax*4]
mov byte [eax], 0x31
mov dword [eax + 4], edx
mov dword [eax + 8], esi
mov dword [eax + 0xc], esi
mov dword [eax + 0x10], esi
mov byte [ebx + 0x238], 0
mov eax, dword [ebx + 0x10]
lea ecx, [eax + 1]
mov dword [esp + 0x10], eax
mov dword [ebx + 0x10], ecx
cmp dword [ebx + 0x14], eax
jg 0x4631c6
mov edi, ebx
call fcn.00439c40
cmp dword [0x4f0384], esi
je 0x4631c6
cmp dword [0x4f0390], esi
jg 0x4631ed
mov ecx, dword [ebx + 0x18]
mov eax, dword [esp + 0x10]
lea eax, [eax + eax*4]
lea eax, [ecx + eax*4]
mov byte [eax], 0x5a
mov dword [eax + 4], 2
mov dword [eax + 8], esi
mov dword [eax + 0xc], esi
mov dword [eax + 0x10], esi
mov byte [ebx + 0x238], 0
mov eax, dword [ebx + 0x10]
lea ecx, [eax + 1]
mov dword [esp + 0x10], eax
mov dword [ebx + 0x10], ecx
cmp dword [ebx + 0x14], eax
jg 0x463216
mov edi, ebx
call fcn.00439c40
cmp dword [0x4f0384], esi
je 0x463216
cmp dword [0x4f0390], esi
jg 0x46323d
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x28]
lea edx, [eax + eax*4]
mov eax, dword [ebx + 0x18]
lea eax, [eax + edx*4]
mov byte [eax], 0x61
mov dword [eax + 4], ecx
mov dword [eax + 8], esi
mov dword [eax + 0xc], esi
mov dword [eax + 0x10], esi
mov byte [ebx + 0x238], 0
mov eax, dword [ebx + 0x10]
lea ecx, [eax + 1]
mov dword [esp + 0x10], eax
mov dword [ebx + 0x10], ecx
cmp dword [ebx + 0x14], eax
jg 0x463266
mov edi, ebx
call fcn.00439c40
cmp dword [0x4f0384], esi
je 0x463266
cmp dword [0x4f0390], esi
jg 0x46328d
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x28]
lea edx, [eax + eax*4]
mov eax, dword [ebx + 0x18]
lea eax, [eax + edx*4]
mov byte [eax], 0x67
mov dword [eax + 4], ecx
mov dword [eax + 8], esi
mov dword [eax + 0xc], esi
mov dword [eax + 0x10], esi
mov byte [ebx + 0x238], 0
mov edx, dword [esp + 0x5c]
test byte [edx + 8], 0x80
je 0x463305
mov eax, dword [ebp + 8]
cmp byte [eax + 0x13], 0
jne 0x463305
mov ecx, eax
cmp dword [ecx + 0xac], 0
jne 0x463305
mov edx, dword [esp + 0x60]
push 0
push edx
push 0x31
mov eax, ebx
call fcn.00439cf0
add esp, 0xc
push 0
push 1
push 0x3e
mov eax, ebx
call fcn.00439cf0
add esp, 0xc
push ebx
mov eax, 1
call fcn.0043aa80
add esp, 4
cmp dword [0x4f0384], 0
je 0x4632ee
cmp dword [0x4f0390], 0
jg 0x463305
mov eax, dword [ebx + 0x34]
push 0
push 1
push 0xffffffffffffffff
push str.rows_inserted
push eax
call fcn.00439390
add esp, 0x14
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.00441920
mov ebx, dword [ebp + 0x10]
add esp, 4
test ebx, ebx
je 0x463450
cmp dword [ebx], 0
mov esi, dword [ebx + 0xc]
mov dword [esp + 0x4c], esi
mov dword [esp + 0x34], 0
jle 0x463437
mov edi, dword [esi]
test edi, edi
je 0x46340f
test byte [edi + 0x20], 1
je 0x463354
mov eax, dword [edi + 0x1c]
test eax, eax
je 0x463354
push eax
call fcn.0049cbfd
add esp, 4
test byte [edi + 0x18], 1
je 0x46336a
mov eax, dword [edi + 0x14]
test eax, eax
je 0x46336a
push eax
call fcn.0049cbfd
add esp, 4
mov edx, dword [edi + 8]
push edx
call fcn.00459bf0
mov eax, dword [edi + 0xc]
add esp, 4
push eax
call fcn.00459bf0
mov ebx, dword [edi + 0x10]
add esp, 4
call fcn.0045a350
mov eax, dword [edi + 0x38]
mov dword [esp + 0x58], eax
test eax, eax
je 0x463403
mov esi, eax
mov ebx, dword [esi]
call fcn.0045a350
mov ecx, dword [esi + 0xc]
push ecx
call fcn.00441920
mov edx, dword [esi + 0x10]
add esp, 4
push edx
call fcn.00459bf0
mov ebx, dword [esi + 0x14]
add esp, 4
call fcn.0045a350
mov eax, dword [esi + 0x18]
push eax
call fcn.00459bf0
mov ebx, dword [esi + 0x1c]
add esp, 4
call fcn.0045a350
mov esi, dword [esi + 0x20]
call fcn.00453fa0
mov esi, dword [esp + 0x58]
mov ecx, dword [esi + 0x28]
push ecx
call fcn.00459bf0
mov edx, dword [esi + 0x2c]
add esp, 4
push edx
call fcn.00459bf0
add esp, 4
push esi
call fcn.0049cbfd
mov esi, dword [esp + 0x50]
add esp, 4
push edi
call fcn.0049cbfd
mov ebx, dword [ebp + 0x10]
add esp, 4
mov eax, dword [esi + 4]
test eax, eax
je 0x46341f
push eax
call fcn.0049cbfd
add esp, 4
mov eax, dword [esp + 0x34]
inc eax
add esi, 0xc
mov dword [esp + 0x34], eax
mov dword [esp + 0x4c], esi
cmp eax, dword [ebx]
jl 0x463334
mov eax, dword [ebx + 0xc]
test eax, eax
je 0x463447
push eax
call fcn.0049cbfd
add esp, 4
push ebx
call fcn.0049cbfd
add esp, 4
mov eax, dword [ebp + 0x14]
test eax, eax
je 0x4634be
mov ebx, dword [eax]
call fcn.0045a350
mov edi, dword [ebp + 0x14]
mov eax, dword [edi + 0xc]
push eax
call fcn.00441920
mov ecx, dword [edi + 0x10]
add esp, 4
push ecx
call fcn.00459bf0
mov ebx, dword [edi + 0x14]
add esp, 4
call fcn.0045a350
mov edx, dword [edi + 0x18]
push edx
call fcn.00459bf0
mov ebx, dword [edi + 0x1c]
add esp, 4
call fcn.0045a350
mov esi, dword [edi + 0x20]
call fcn.00453fa0
mov eax, dword [edi + 0x28]
push eax
call fcn.00459bf0
mov ecx, dword [edi + 0x2c]
add esp, 4
push ecx
call fcn.00459bf0
add esp, 4
push edi
call fcn.0049cbfd
add esp, 4
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x4634fc
xor esi, esi
cmp dword [edi + 4], esi
jle 0x4634e4
mov edx, dword [edi]
mov eax, dword [edx + esi*8]
test eax, eax
je 0x4634de
push eax
call fcn.0049cbfd
add esp, 4
inc esi
cmp esi, dword [edi + 4]
jl 0x4634cc
mov eax, dword [edi]
test eax, eax
je 0x4634f3
push eax
call fcn.0049cbfd
add esp, 4
push edi
call fcn.0049cbfd
add esp, 4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret