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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0xc8
mov eax, dword [0x1029912c]
xor eax, esp
mov dword [esp + 0xc4], eax
mov eax, dword [ebp + 0x14]
push esi
mov esi, dword [ebp + 0xc]
mov dword [esp + 0x6c], eax
xor eax, eax
push edi
mov edi, ecx
mov dword [esp + 0x5c], eax
mov ecx, dword [ebp + 8]
mov dword [esp + 0x78], eax
mov dword [esp + 0x98], eax
mov dword [esp + 0x60], eax
or eax, 0xffffffff
cmp dword [edi + 0x24], 0
mov dword [esp + 0x68], eax
mov eax, dword [edi]
mov dword [esp + 0x74], edx
mov dword [esp + 0x3c], edi
mov dword [esp + 0x34], ecx
mov dword [esp + 0x10], esi
mov dword [esp + 0x2c], 0
mov dword [esp + 0x94], 0
mov dword [esp + 0x8c], 0
mov byte [esp + 0xf], 0
mov dword [esp + 0x50], 0
mov dword [esp + 0x80], 0
mov dword [esp + 0x9c], 0
mov dword [esp + 0x7c], 0
mov dword [esp + 0x4c], eax
jne 0x101331b4
cmp byte [eax + 0x51], 0
jne 0x101331b4
mov dword [esp + 0x1c], 0
test ecx, ecx
je 0x10131e07
test dword [ecx + 8], 0x200
je 0x10131e07
cmp dword [ecx + 0x34], 0
jne 0x10131e07
mov edx, dword [ecx]
mov dword [esp + 0x50], edx
mov edx, ecx
mov dword [ecx], 0
mov ecx, eax
push 1
call fcn.1013ad30
add esp, 4
mov dword [esp + 0x34], 0
mov edx, dword [esp + 0x74]
mov ecx, edi
call fcn.10129ca0
mov esi, eax
mov dword [esp + 8], esi
test esi, esi
je 0x101331b0
mov edx, dword [esi + 0x48]
mov ecx, dword [esp + 0x4c]
call fcn.1013a370
mov ecx, eax
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x4c]
add ecx, ecx
mov edx, 0x12
mov eax, dword [eax + 0x10]
push dword [eax + ecx*8]
mov ecx, edi
push 0
push dword [esi]
call fcn.101221a0
add esp, 0xc
test eax, eax
jne 0x101331b0
mov eax, dword [esi + 0x24]
xor edx, edx
shr eax, 5
and eax, 0xffffff01
mov dword [esp + 0x28], 0
mov dword [esp + 0x48], eax
mov eax, dword [edi]
mov eax, dword [eax + 0x20]
and eax, 0x40000
or eax, edx
je 0x10131e8b
mov edx, esi
mov ecx, edi
call fcn.101454e0
mov edx, eax
mov ecx, edx
test edx, edx
je 0x10131ea6
cmp byte [ecx + 8], 0x74
jne 0x10131e9f
movzx eax, byte [ecx + 9]
or dword [esp + 0x28], eax
mov ecx, dword [ecx + 0x20]
test ecx, ecx
jne 0x10131e91
xor eax, eax
mov ecx, edi
cmp dword [esp + 0x28], eax
cmovne eax, edx
mov edx, esi
mov dword [esp + 0x6c], eax
mov eax, dword [esi + 0xc]
mov dword [esp + 0x64], eax
call fcn.101258d0
test eax, eax
jne 0x101331b0
push dword [esp + 0x28]
mov edx, esi
mov ecx, edi
call fcn.10129d30
add esp, 4
test eax, eax
jne 0x101331b0
mov ecx, edi
call fcn.1013dd00
mov esi, eax
mov dword [esp + 0x14], esi
test esi, esi
je 0x101331b0
cmp byte [edi + 0x12], 0
jne 0x10131f05
or dword [esi + 0x98], 0x20
cmp dword [esp + 0x34], 0
jne 0x10131f17
cmp dword [esp + 0x6c], 0
jne 0x10131f17
xor edx, edx
jmp 0x10131f1c
mov edx, 1
push dword [esp + 0x24]
mov ecx, edi
call fcn.101288a0
mov eax, dword [ebp + 0x10]
add esp, 4
cmp dword [esp + 0x10], 0
mov dword [esp + 0x90], eax
jne 0x10131f5a
push dword [esp + 0x24]
mov edx, dword [esp + 0xc]
mov ecx, edi
push eax
push dword [esp + 0x3c]
call fcn.10134fc0
add esp, 0xc
test eax, eax
jne 0x10133115
mov esi, dword [esp + 8]
mov ecx, edi
mov edx, dword [esp + 0x24]
push esi
call fcn.10131af0
mov ecx, dword [edi + 0x2c]
add esp, 4
mov dword [esp + 0x44], eax
lea eax, [ecx + 1]
mov edx, eax
mov dword [esp + 0x88], eax
movsx eax, word [esi + 0x2a]
inc eax
mov dword [esp + 0x30], edx
add eax, ecx
mov dword [edi + 0x2c], eax
cmp dword [esi + 0x38], 0
je 0x10131f9f
lea edx, [ecx + 2]
inc eax
mov dword [esp + 0x30], edx
mov dword [edi + 0x2c], eax
mov ecx, dword [esi + 0x24]
lea eax, [edx + 1]
mov edx, dword [esp + 0x10]
shr ecx, 7
not cl
mov dword [esp + 0x40], eax
and ecx, 0xffffff01
mov dword [esp + 0x18], ecx
test edx, edx
je 0x1013211d
mov eax, dword [edx + 4]
xor ecx, ecx
test eax, eax
jle 0x10131fe2
nop dword [eax]
mov eax, dword [edx]
mov dword [eax + ecx*8 + 4], 0xffffffff
inc ecx
mov eax, dword [edx + 4]
cmp ecx, eax
jl 0x10131fd0
xor edx, edx
mov dword [esp + 0x20], edx
test eax, eax
jle 0x10132121
movzx eax, word [esi + 0x2a]
mov dword [esp + 0x38], eax
cwde
xor esi, esi
test eax, eax
jle 0x10132085
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx]
lea ecx, [eax + edx*8]
mov eax, dword [esp + 8]
mov dword [esp + 0x84], ecx
mov eax, dword [eax + 4]
mov dword [esp + 0x54], eax
nop
mov edx, dword [eax]
mov ecx, dword [ecx]
call fcn.100e33b0
test eax, eax
je 0x10132051
mov eax, dword [esp + 0x54]
inc esi
mov edx, dword [esp + 0x38]
add eax, 0x10
movsx ecx, dx
cmp esi, ecx
mov dword [esp + 0x54], eax
mov ecx, dword [esp + 0x84]
jl 0x10132020
mov edx, dword [esp + 0x20]
jmp 0x10132085
mov eax, dword [esp + 0x84]
xor ecx, ecx
mov edx, dword [esp + 0x18]
mov dword [eax + 4], esi
movzx eax, dl
mov edx, dword [esp + 0x20]
cmp edx, esi
cmove ecx, eax
mov eax, dword [esp + 8]
mov byte [esp + 0x18], cl
movsx eax, word [eax + 0x28]
cmp esi, eax
jne 0x10132085
mov dword [esp + 0x68], edx
mov byte [esp + 0x18], cl
mov eax, dword [esp + 8]
movzx eax, word [eax + 0x2a]
cwde
cmp esi, eax
jl 0x101320df
mov eax, dword [esp + 0x10]
mov eax, dword [eax]
mov esi, dword [eax + edx*8]
mov edx, str._ROWID_
mov ecx, esi
call fcn.100e33b0
test eax, eax
je 0x101320cb
mov edx, str.ROWID
mov ecx, esi
call fcn.100e33b0
test eax, eax
je 0x101320cb
mov edx, 0x10273298
mov ecx, esi
call fcn.100e33b0
test eax, eax
jne 0x101320ff
cmp byte [esp + 0x48], 0
jne 0x101320ff
mov edx, dword [esp + 0x20]
mov dword [esp + 0x68], edx
mov byte [esp + 0x18], 0
mov ecx, dword [esp + 8]
inc edx
mov esi, dword [esp + 0x10]
mov dword [esp + 0x20], edx
movzx eax, word [ecx + 0x2a]
mov dword [esp + 0x38], eax
cmp edx, dword [esi + 4]
jl 0x10131ff8
jmp 0x10132125
push esi
push 0
push dword [esp + 0x7c]
push str.table__S_has_no_column_named__s
push edi
call fcn.100e31f0
add esp, 0x14
mov byte [edi + 0x11], 1
jmp 0x101331b0
mov esi, edx
jmp 0x10132125
mov esi, dword [esp + 0x10]
cmp dword [esp + 0x34], 0
je 0x101323ce
mov ecx, dword [esp + 0x14]
mov edx, 0xd
inc dword [edi + 0x2c]
mov esi, dword [edi + 0x2c]
mov eax, dword [ecx + 0x6c]
mov dword [esp + 0x38], eax
inc eax
push eax
push 0
push esi
call fcn.101008e0
mov edx, dword [esp + 0x40]
xor eax, eax
add esp, 0xc
mov byte [esp + 0xa0], 0xd
cmp byte [esp + 0x18], al
mov ecx, edi
mov dword [esp + 0xa4], esi
cmovne eax, dword [esp + 0x40]
mov dword [esp + 0xa8], eax
mov eax, dword [esp + 8]
mov dword [esp + 0xb0], 0
movsx eax, word [eax + 0x2a]
mov dword [esp + 0xac], eax
lea eax, [esp + 0xa0]
push eax
call fcn.10142820
mov ecx, dword [esp + 0xac]
add esp, 4
mov dword [esp + 0x80], ecx
test eax, eax
jne 0x101331b0
mov eax, dword [esp + 0x4c]
cmp byte [eax + 0x51], 0
jne 0x101331b0
cmp dword [edi + 0x24], 0
jne 0x101331b0
mov edx, esi
mov esi, dword [esp + 0x14]
mov ecx, esi
call fcn.10100e80
mov edx, dword [esp + 0x38]
mov ecx, esi
call fcn.10101280
cmp dword [esp + 0x6c], 0
mov ecx, dword [esp + 0x34]
mov eax, dword [ecx]
mov eax, dword [eax]
mov dword [esp + 0x20], eax
jne 0x101322fd
mov eax, dword [edi + 8]
mov dword [esp + 0x1c], eax
test eax, eax
jne 0x10132228
cmp dword [edi + 0x74], eax
jne 0x1013221d
mov eax, dword [edi]
test byte [eax + 0x4c], 8
jne 0x1013221d
mov byte [edi + 0x17], 1
mov ecx, edi
call fcn.101006a0
mov dword [esp + 0x1c], eax
mov ecx, dword [esp + 8]
mov eax, dword [eax + 0x6c]
mov dword [esp + 0x18], eax
cmp dword [ecx + 0x38], 0
je 0x10132253
mov edx, dword [ecx + 0x40]
test edx, edx
je 0x10132255
mov eax, dword [edi]
cmp dword [edx], eax
je 0x1013224d
mov edx, dword [edx + 0x18]
test edx, edx
jne 0x10132242
mov eax, dword [esp + 0x18]
jmp 0x10132255
xor edx, edx
mov ecx, 1
mov dword [esp + 0x38], ecx
cmp eax, ecx
jle 0x101322e9
mov eax, dword [esp + 0x1c]
mov eax, dword [eax]
mov al, byte [eax + 0x51]
mov byte [esp + 0x5b], al
mov eax, dword [esp + 0x18]
dec eax
test ecx, ecx
cmovns eax, ecx
cmp byte [esp + 0x5b], 0
je 0x1013228b
mov eax, 0x102ad334
jmp 0x10132298
lea ecx, [eax + eax*4]
mov eax, dword [esp + 0x1c]
mov eax, dword [eax + 0x68]
lea eax, [eax + ecx*4]
mov cl, byte [eax]
cmp cl, 0x6d
jne 0x101322ce
mov ecx, dword [esp + 0x24]
cmp dword [eax + 0xc], ecx
jne 0x101322d8
mov ecx, dword [eax + 8]
mov eax, dword [esp + 8]
cmp ecx, dword [eax + 0x1c]
je 0x101322fd
mov eax, dword [eax + 8]
test eax, eax
je 0x101322d8
nop dword [eax + eax]
cmp ecx, dword [eax + 0x2c]
je 0x101322fd
mov eax, dword [eax + 0x14]
test eax, eax
jne 0x101322c0
jmp 0x101322d8
cmp cl, 0xa3
jne 0x101322d8
cmp dword [eax + 0x10], edx
je 0x101322fd
mov ecx, dword [esp + 0x38]
mov eax, dword [esp + 0x18]
inc ecx
mov dword [esp + 0x38], ecx
cmp ecx, eax
jl 0x10132277
mov eax, dword [esp + 0xa4]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x20]
jmp 0x10132420
mov edx, dword [edi + 0x28]
mov ecx, edi
mov byte [esp + 0xf], 1
mov dword [esp + 0x2c], edx
lea eax, [edx + 1]
mov dword [edi + 0x28], eax
call fcn.1011d5d0
mov edi, eax
call fcn.1011d5d0
push dword [esp + 0x20]
mov ecx, esi
mov dword [esp + 0x28], eax
push edx
mov edx, 0x71
call fcn.10100a10
mov eax, dword [esp + 0xac]
mov edx, 0xe
push eax
mov ecx, esi
mov dword [esp + 0x28], eax
call fcn.101009b0
mov ecx, dword [esp + 0x20]
add esp, 0xc
mov edx, 0x66
mov esi, eax
push edi
push dword [esp + 0x24]
push dword [esp + 0x88]
call fcn.101008e0
mov ecx, dword [esp + 0x20]
add esp, 0xc
mov edx, 0x79
push dword [esp + 0x24]
push dword [esp + 0x30]
call fcn.10100a10
push dword [esp + 0x2c]
mov ecx, dword [esp + 0x20]
mov edx, 0x7a
push edi
push dword [esp + 0x3c]
call fcn.101008e0
mov ecx, dword [esp + 0x28]
add esp, 0x14
mov edx, esi
call fcn.10100a80
mov ecx, dword [esp + 0x14]
mov edx, esi
call fcn.10101280
mov edx, edi
mov edi, dword [esp + 0x3c]
mov ecx, edi
call fcn.1011d5f0
mov edx, dword [esp + 0x24]
call fcn.1011d5f0
mov eax, dword [esp + 0x20]
jmp 0x10132420
mov ecx, dword [esp + 0x50]
xorps xmm0, xmm0
movaps xmmword [esp + 0xa0], xmm0
movaps xmmword [esp + 0xb0], xmm0
mov dword [esp + 0xa0], edi
mov dword [esp + 0x2c], 0xffffffff
test ecx, ecx
je 0x1013241a
mov eax, dword [ecx]
mov edx, ecx
lea ecx, [esp + 0xa0]
mov dword [esp + 0x20], eax
call fcn.10115830
test eax, eax
jne 0x101331b4
mov eax, dword [esp + 0x20]
jmp 0x10132420
xor eax, eax
mov dword [esp + 0x20], eax
cmp dword [esp + 0x10], 0
jne 0x10132437
test eax, eax
jle 0x10132437
mov ecx, dword [esp + 8]
movsx eax, word [ecx + 0x28]
mov dword [esp + 0x68], eax
mov eax, dword [esp + 8]
xor ecx, ecx
xor edx, edx
mov dword [esp + 0x24], ecx
mov dword [esp + 0x18], edx
movsx esi, word [eax + 0x2a]
xor eax, eax
cmp esi, 2
jl 0x1013249e
mov eax, dword [esp + 8]
lea edx, [esi - 2]
shr edx, 1
mov ecx, dword [eax + 4]
add ecx, 0x1f
inc edx
lea eax, [edx + edx]
mov dword [esp + 0x54], 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 + 0x18], eax
sub edx, 1
jne 0x10132470
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x54]
cmp eax, esi
jge 0x101324c4
shl eax, 4
mov dword [esp + 0x54], eax
mov eax, dword [esp + 8]
mov edi, dword [esp + 0x54]
mov eax, dword [eax + 4]
movzx eax, byte [edi + eax + 0xf]
mov edi, dword [esp + 0x3c]
shr eax, 1
and eax, 1
jmp 0x101324c6
xor eax, eax
cmp dword [esp + 0x10], 0
jne 0x10132500
cmp dword [esp + 0x20], 0
je 0x10132524
sub esi, edx
sub esi, ecx
mov ecx, dword [esp + 0x20]
sub esi, eax
cmp ecx, esi
je 0x10132524
push ecx
push esi
push 0
push dword [esp + 0x80]
push str.table__S_has__d_columns_but__d_values_were_supplied
push edi
call fcn.100e31f0
add esp, 0x18
jmp 0x101331b0
mov esi, dword [esp + 0x10]
mov ecx, dword [esp + 0x20]
mov eax, dword [esi + 4]
cmp ecx, eax
je 0x10132524
push eax
push ecx
push str._d_values_for__d_columns
push edi
call fcn.100e31f0
add esp, 0x10
jmp 0x101331b4
mov eax, dword [esp + 0x4c]
mov eax, dword [eax + 0x20]
and eax, 0x80
or eax, 0
je 0x10132562
cmp byte [edi + 0x12], 0
jne 0x10132562
cmp dword [edi + 0x78], 0
jne 0x10132562
inc dword [edi + 0x2c]
mov edx, 0x46
mov eax, dword [edi + 0x2c]
mov ecx, dword [esp + 0x14]
push eax
push 0
mov dword [esp + 0xa4], eax
call fcn.10100a10
add esp, 8
cmp dword [esp + 0x64], 0
jne 0x1013260a
mov edx, dword [esp + 8]
lea eax, [esp + 0x60]
push eax
lea eax, [esp + 0x7c]
mov ecx, edi
push eax
push 0
push 0xffffffffffffffff
push 0
push 0x6e
call fcn.10134c90
mov ecx, dword [esp + 0x64]
mov esi, eax
push 0
lea eax, [esi*4 + 4]
push eax
call fcn.100e0100
add esp, 0x20
mov dword [esp + 0x7c], eax
test eax, eax
je 0x101331b0
mov eax, dword [esp + 8]
xor ecx, ecx
mov edx, dword [eax + 8]
test esi, esi
jle 0x101325f5
nop dword [eax + eax]
inc dword [edi + 0x2c]
mov eax, dword [edi + 0x2c]
mov edi, dword [esp + 0x7c]
mov dword [edi + ecx*4], eax
inc ecx
mov edi, dword [esp + 0x3c]
movzx eax, word [edx + 0x34]
add dword [edi + 0x2c], eax
mov edx, dword [edx + 0x14]
cmp ecx, esi
jl 0x101325c0
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x60]
mov dword [esp + 0x5c], ecx
mov dword [esp + 0x98], edx
jmp 0x1013260e
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x60]
mov dword [esp + 0x5c], ecx
mov dword [esp + 0x98], edx
jmp 0x10132612
xor ecx, ecx
xor edx, edx
mov eax, dword [esp + 8]
cmp dword [esp + 0x70], 0
je 0x10132668
cmp dword [eax + 0x38], 0
je 0x10132631
push dword [eax]
push str.UPSERT_not_implemented_for_virtual_table___s_
push edi
call fcn.100e31f0
jmp 0x101331ad
mov esi, dword [esp + 0x74]
mov eax, dword [esp + 0x70]
mov edi, dword [esp + 0x70]
mov dword [esi + 0x34], ecx
mov dword [eax + 0x14], esi
mov eax, dword [esp + 0x40]
mov dword [edi + 0x18], eax
mov eax, edi
mov edi, dword [esp + 0x3c]
cmp dword [eax], 0
mov dword [eax + 0x1c], ecx
mov dword [eax + 0x20], edx
je 0x10132668
push eax
mov edx, esi
mov ecx, edi
call fcn.10149430
add esp, 4
cmp byte [esp + 0xf], 0
mov esi, dword [esp + 0x14]
je 0x10132696
push dword [esp + 0x2c]
mov edx, 0x24
mov ecx, esi
call fcn.101009b0
mov dword [esp + 0x98], eax
mov eax, dword [esi + 0x6c]
mov dword [esp + 0x90], eax
jmp 0x101326bd
cmp dword [esp + 0x34], 0
je 0x101326c0
push dword [esp + 0x1c]
mov edx, 0xe
mov ecx, esi
call fcn.101009b0
mov ecx, eax
mov dword [esp + 0x90], ecx
mov dword [esp + 0x98], ecx
add esp, 4
dec dword [edi + 0x38]
test byte [esp + 0x28], 1
mov eax, dword [edi + 0x38]
mov dword [esp + 0x24], eax
je 0x10132a3e
mov eax, dword [esp + 8]
mov ecx, edi
movsx edx, word [eax + 0x2a]
inc edx
call fcn.1011d610
mov ecx, dword [esp + 0x68]
mov dword [esp + 0x18], eax
push eax
test ecx, ecx
jns 0x10132705
push 0xffffffffffffffff
mov edx, 0x46
mov ecx, esi
call fcn.10100a10
add esp, 8
jmp 0x10132780
cmp byte [esp + 0x13], 0
je 0x10132722
push ecx
push dword [esp + 0x34]
mov edx, 0x5a
mov ecx, esi
call fcn.101008e0
add esp, 0xc
jmp 0x10132737
mov eax, dword [esp + 0x54]
lea edx, [ecx + ecx*2]
mov ecx, edi
mov edx, dword [eax + edx*8 + 4]
call fcn.1011c050
add esp, 4
push dword [esp + 0x18]
mov edx, 0x33
mov ecx, esi
call fcn.101009b0
mov ecx, dword [esp + 0x18]
add esp, 4
mov edx, 0x46
mov esi, eax
push dword [esp + 0x18]
push 0xffffffffffffffff
call fcn.10100a10
mov ecx, dword [esp + 0x1c]
mov edx, esi
call fcn.10101280
push dword [esp + 0x20]
mov ecx, dword [esp + 0x20]
mov edx, 0xf
call fcn.101009b0
add esp, 0xc
mov eax, dword [esp + 8]
xor edx, edx
xor esi, esi
movzx eax, word [eax + 0x2a]
mov ecx, eax
cmp dx, ax
jge 0x101329b6
mov edx, dword [esp + 0x18]
xor ecx, ecx
inc edx
mov dword [esp + 0x1c], ecx
or eax, 0xffffffff
mov dword [esp + 0x28], edx
sub eax, dword [esp + 0x18]
mov dword [esp + 0x84], eax
mov eax, dword [esp + 0x10]
test eax, eax
je 0x101327ec
xor esi, esi
cmp dword [eax + 4], esi
jle 0x101327ec
mov ecx, dword [eax]
mov edi, dword [esp + 0x84]
add ecx, 4
nop
lea eax, [edi + edx]
cmp dword [ecx], eax
mov eax, dword [esp + 0x10]
je 0x101327e4
inc esi
add ecx, 8
cmp esi, dword [eax + 4]
jl 0x101327d0
mov edi, dword [esp + 0x3c]
mov ecx, dword [esp + 0x1c]
cmp byte [esp + 0xf], 0
jne 0x101327fa
cmp dword [esp + 0x50], 0
je 0x10132803
test eax, eax
je 0x10132870
cmp esi, dword [eax + 4]
jl 0x10132870
mov eax, dword [esp + 8]
mov eax, dword [eax + 4]
mov eax, dword [eax + ecx + 4]
test eax, eax
je 0x10132834
cmp byte [eax], 0xa4
jne 0x10132834
mov ecx, dword [edi + 8]
push edx
push dword [eax + 0x1c]
mov edx, 0x4e
call fcn.10100a10
mov edx, dword [esp + 0x30]
add esp, 8
jmp 0x10132973
push edx
mov edx, eax
mov ecx, edi
call fcn.1011ad60
mov edx, dword [esp + 0x2c]
add esp, 4
cmp eax, edx
je 0x10132973
mov ecx, dword [edi + 8]
test ecx, ecx
je 0x10132973
push edx
push eax
mov edx, 0x4f
call fcn.10100a10
mov edx, dword [esp + 0x30]
add esp, 8
jmp 0x10132973
cmp byte [esp + 0xf], 0
je 0x10132897
mov ecx, dword [esp + 0x14]
push edx
push esi
push dword [esp + 0x34]
mov edx, 0x5a
call fcn.101008e0
mov edx, dword [esp + 0x34]
add esp, 0xc
jmp 0x10132973
mov ecx, dword [esp + 0x50]
lea eax, [esi + esi*2]
mov eax, dword [ecx + eax*8 + 4]
mov ecx, dword [edi + 8]
mov dword [esp + 0x54], eax
mov dword [esp + 0x38], ecx
test eax, eax
je 0x101328c1
cmp byte [eax], 0xa4
jne 0x101328c1
push edx
push dword [eax + 0x1c]
mov edx, 0x4e
jmp 0x101328e4
push edx
mov edx, eax
mov ecx, edi
call fcn.1011ad60
mov edx, dword [esp + 0x2c]
add esp, 4
cmp eax, edx
je 0x101328f0
mov ecx, dword [edi + 8]
test ecx, ecx
je 0x101328f0
push edx
push eax
mov edx, 0x4f
call fcn.10100a10
mov edx, dword [esp + 0x30]
add esp, 8
mov ecx, dword [esp + 0x38]
inc dword [edi + 0x2c]
mov eax, dword [edi + 0x2c]
mov dword [esp + 0x60], eax
mov eax, dword [ecx + 0x6c]
mov dword [esp + 0x78], eax
cmp dword [ecx + 0x70], eax
jg 0x10132924
push 0
push dword [esp + 0x64]
push edx
mov edx, 0x4e
call fcn.101008a0
mov edx, dword [esp + 0x34]
add esp, 0xc
jmp 0x10132959
mov edi, dword [esp + 0x60]
inc eax
mov dword [ecx + 0x6c], eax
mov eax, dword [esp + 0x78]
lea ecx, [eax + eax*4]
mov eax, dword [esp + 0x38]
mov eax, dword [eax + 0x68]
mov dword [eax + ecx*4], 0x4e
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], edi
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [esp + 0x54]
mov al, byte [ecx]
and dword [ecx + 4], 0xffffefff
mov byte [ecx + 0x26], al
mov eax, dword [esp + 0x60]
mov byte [ecx], 0xa4
mov dword [ecx + 0x1c], eax
add dword [esp + 0x1c], 0x10
lea eax, [esi + 1]
mov edi, dword [esp + 8]
inc edx
cmp dword [esp + 0x10], 0
mov ecx, dword [esp + 0x84]
cmovne eax, esi
mov dword [esp + 0x28], edx
mov esi, eax
add ecx, edx
movzx eax, word [edi + 0x2a]
mov edi, dword [esp + 0x3c]
cwde
cmp ecx, eax
mov ecx, dword [esp + 0x1c]
jl 0x101327b4
mov esi, dword [esp + 8]
movzx ecx, word [esi + 0x2a]
jmp 0x101329ba
mov esi, dword [esp + 8]
cmp dword [esp + 0x64], 0
movzx eax, cx
jne 0x101329dc
mov eax, dword [esp + 0x18]
mov edx, esi
mov ecx, dword [esp + 0x14]
inc eax
push eax
call fcn.101319f0
movzx eax, word [esi + 0x2a]
add esp, 4
push dword [esp + 0x24]
mov ecx, dword [esp + 0x1c]
push dword [esp + 0x94]
mov edx, dword [esp + 0x74]
cwde
sub ecx, eax
dec ecx
push ecx
push esi
push 1
push 0
push 0x74
mov ecx, edi
call fcn.10146ee0
movsx eax, word [esi + 0x2a]
add esp, 0x1c
inc eax
cmp eax, 1
jne 0x10132a2d
mov ecx, dword [esp + 0x18]
test ecx, ecx
je 0x10132a42
mov al, byte [edi + 0x13]
cmp al, 8
jae 0x10132a42
movzx eax, al
mov dword [edi + eax*4 + 0x90], ecx
inc byte [edi + 0x13]
jmp 0x10132a42
cmp eax, dword [edi + 0x1c]
jle 0x10132a42
mov dword [edi + 0x1c], eax
mov eax, dword [esp + 0x18]
mov dword [edi + 0x20], eax
jmp 0x10132a42
mov esi, dword [esp + 8]
cmp dword [esp + 0x64], 0
jne 0x10132f28
mov eax, dword [esi + 0x38]
mov esi, dword [esp + 0x14]
test eax, eax
je 0x10132a79
push dword [esp + 0x88]
mov edx, 0x49
mov ecx, esi
push 0
call fcn.10100a10
mov ecx, dword [esp + 0x10]
add esp, 8
mov eax, dword [ecx + 0x38]
jmp 0x10132a7d
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0x68]
test edx, edx
js 0x10132b73
cmp byte [esp + 0xf], 0
je 0x10132aaa
push dword [esp + 0x30]
mov ecx, esi
push edx
push dword [esp + 0x34]
mov edx, 0x5a
call fcn.101008e0
add esp, 0xc
jmp 0x10132afb
cmp dword [esp + 0x34], 0
je 0x10132ad0
mov eax, dword [esp + 0x80]
mov ecx, esi
push dword [esp + 0x30]
add eax, edx
mov edx, 0x4e
push eax
call fcn.10100a10
add esp, 8
jmp 0x10132afb
lea eax, [edx + edx*2]
mov edx, dword [esp + 0x50]
lfence
mov edx, dword [edx + eax*8 + 4]
cmp byte [edx], 0x6e
jne 0x10132aed
cmp dword [ecx + 0x38], 0
je 0x10132b7d
push dword [esp + 0x30]
mov ecx, edi
call fcn.1011c050
add esp, 4
mov eax, dword [esp + 8]
mov ecx, esi
cmp dword [eax + 0x38], 0
jne 0x10132b46
push dword [esp + 0x30]
mov edx, 0x33
call fcn.101009b0
mov ecx, dword [esp + 0x18]
add esp, 4
mov edx, 0x79
mov esi, eax
push dword [esp + 0x44]
push dword [esp + 0x34]
push dword [esp + 0x64]
call fcn.101008e0
add esp, 0xc
mov edx, esi
mov esi, dword [esp + 0x14]
mov ecx, esi
call fcn.10101280
jmp 0x10132b5e
mov eax, dword [esi + 0x6c]
mov edx, 0x32
add eax, 2
push eax
push dword [esp + 0x34]
call fcn.10100a10
add esp, 8
push dword [esp + 0x30]
mov edx, 0xf
mov ecx, esi
call fcn.101009b0
add esp, 4
jmp 0x10132bb7
test eax, eax
jne 0x10132ba2
cmp byte [esp + 0x48], al
jne 0x10132ba2
push dword [esp + 0x44]
mov edx, 0x79
mov ecx, esi
push dword [esp + 0x34]
push dword [esp + 0x64]
call fcn.101008e0
add esp, 0xc
mov dword [esp + 0x1c], 1
jmp 0x10132bbf
push dword [esp + 0x30]
mov edx, 0x49
mov ecx, esi
push 0
call fcn.10100a10
add esp, 8
mov dword [esp + 0x1c], 0
mov eax, dword [esp + 0x44]
test eax, eax
jle 0x10132bdc
push dword [esp + 0x30]
mov ecx, dword [edi + 8]
mov edx, 0x97
push eax
call fcn.10100a10
add esp, 8
mov eax, dword [esp + 8]
xor ecx, ecx
xor esi, esi
mov dword [esp + 0x44], 0
cmp cx, word [eax + 0x2a]
jge 0x10132dbf
xor edx, edx
mov dword [esp + 0x64], edx
nop dword [eax]
mov ecx, dword [esp + 0x40]
movsx eax, word [eax + 0x28]
add ecx, esi
cmp esi, eax
jne 0x10132c22
push ecx
mov ecx, dword [esp + 0x18]
mov edx, 0x4a
call fcn.101009b0
jmp 0x10132d9c
mov eax, dword [esp + 0x10]
test eax, eax
jne 0x10132c61
mov eax, dword [esp + 8]
mov eax, dword [eax + 4]
mov dl, byte [eax + edx + 0xf]
mov eax, dword [esp + 0x44]
and dl, 2
je 0x10132c4f
inc eax
or ecx, 0xffffffff
test dl, dl
cmove eax, dword [esp + 0x44]
mov dword [esp + 0x44], eax
jmp 0x10132c7c
mov ecx, esi
sub ecx, eax
inc eax
test dl, dl
cmove eax, dword [esp + 0x44]
mov dword [esp + 0x44], eax
jmp 0x10132c7c
mov edx, dword [eax + 4]
xor ecx, ecx
test edx, edx
jle 0x10132c88
mov eax, dword [eax]
add eax, 4
nop
cmp dword [eax], esi
je 0x10132c7c
inc ecx
add eax, 8
cmp ecx, edx
jl 0x10132c70
test ecx, ecx
js 0x10132d18
mov eax, dword [esp + 0x10]
cmp dword [esp + 0x20], 0
je 0x10132d18
test eax, eax
je 0x10132c9c
cmp ecx, dword [eax + 4]
jge 0x10132d18
cmp byte [esp + 0xf], 0
je 0x10132cc5
mov edx, dword [esp + 0x40]
add edx, esi
push edx
push ecx
push dword [esp + 0x34]
mov ecx, dword [esp + 0x20]
mov edx, 0x5a
call fcn.101008e0
add esp, 0xc
jmp 0x10132d9f
cmp dword [esp + 0x34], 0
je 0x10132d01
mov eax, dword [esp + 0x40]
cmp dword [esp + 0x80], eax
je 0x10132d9f
lea edx, [eax + esi]
mov eax, dword [esp + 0x80]
push edx
add eax, ecx
mov edx, 0x4f
mov ecx, dword [esp + 0x18]
push eax
call fcn.10100a10
add esp, 8
jmp 0x10132d9f
mov edx, dword [esp + 0x40]
mov eax, dword [esp + 0x50]
add edx, esi
push edx
lea edx, [ecx + ecx*2]
mov edx, dword [eax + edx*8 + 4]
jmp 0x10132d95
cmp byte [edi + 0x17], 0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x64]
mov eax, dword [eax + 4]
mov eax, dword [eax + ecx + 4]
mov dword [esp + 0x48], eax
je 0x10132d8c
mov byte [esp + 0xb4], 2
mov dword [esp + 0xa4], fcn.10118000
mov dword [esp + 0xa8], 0x10117fa0
mov dword [esp + 0xb8], 0
test eax, eax
je 0x10132d7a
mov edx, eax
lea ecx, [esp + 0xa0]
call fcn.10113210
cmp byte [esp + 0xb4], 0
mov eax, dword [esp + 0x48]
je 0x10132d8c
mov edx, dword [esp + 0x40]
mov ecx, edi
add edx, esi
push edx
mov edx, eax
call fcn.1011be70
jmp 0x10132d9c
mov edx, dword [esp + 0x40]
add edx, esi
push edx
mov edx, eax
mov ecx, edi
call fcn.1011c050
add esp, 4
mov eax, dword [esp + 8]
inc esi
mov edx, dword [esp + 0x64]
add edx, 0x10
mov dword [esp + 0x64], edx
movsx eax, word [eax + 0x2a]
cmp esi, eax
mov eax, dword [esp + 8]
jl 0x10132c00
cmp dword [eax + 0x38], 0
je 0x10132e52
mov esi, dword [eax + 0x40]
test esi, esi
je 0x10132ddf
mov ecx, dword [esp + 0x4c]
cmp dword [esi], ecx
je 0x10132ddf
mov esi, dword [esi + 0x18]
test esi, esi
jne 0x10132dd4
mov edx, eax
mov ecx, edi
call fcn.1014b680
mov eax, dword [esp + 8]
mov edx, 0xa
push 0xfffffffffffffff4
push esi
push dword [esp + 0x90]
movsx eax, word [eax + 0x2a]
mov esi, dword [esp + 0x20]
add eax, 2
push eax
push 1
mov ecx, esi
call fcn.10100ca0
mov eax, dword [esi + 0x6c]
add esp, 0x14
test eax, eax
jle 0x10132e3f
mov ecx, dword [esp + 0x90]
cmp ecx, 0xb
movzx edx, cx
lea ecx, [eax + eax*4]
mov eax, dword [esi + 0x68]
mov dword [esp + 0x48], 2
cmove edx, dword [esp + 0x48]
mov word [eax + ecx*4 - 0x12], dx
mov eax, dword [edi + 0x74]
mov ecx, edi
test eax, eax
cmovne ecx, eax
mov byte [ecx + 0x15], 1
jmp 0x10132f2c
push dword [esp + 0x70]
mov esi, dword [esp + 0xc]
lea eax, [esp + 0x4c]
push 0
push eax
push dword [esp + 0x30]
mov eax, dword [esp + 0x78]
mov edx, esi
push dword [esp + 0xa0]
shr eax, 0x1f
mov ecx, edi
xor al, 1
movzx eax, al
push eax
push 0
push dword [esp + 0xa4]
push dword [esp + 0xb8]
push dword [esp + 0x80]
push dword [esp + 0xa4]
call fcn.101332c0
add esp, 0x2c
mov edx, esi
mov ecx, edi
push 0
push 0
push dword [esp + 0x90]
push 0
call fcn.10130400
add esp, 0x10
cmp dword [esp + 0x48], 0
je 0x10132ef7
cmp dword [esp + 0x6c], 0
jne 0x10132ef3
mov eax, dword [esp + 0x4c]
mov eax, dword [eax + 0x20]
and eax, 0x4000
or eax, 0
je 0x10132ef7
mov ecx, dword [esi + 0x48]
mov edx, dword [esi]
add ecx, 0x38
push 0
call fcn.100e47e0
add esp, 4
cmp dword [eax + 8], 0
je 0x10132ef7
xor eax, eax
jmp 0x10132efc
mov eax, 1
push eax
push dword [esp + 0x20]
mov edx, esi
mov ecx, edi
push 0
push dword [esp + 0x88]
push dword [esp + 0x98]
push dword [esp + 0xac]
push dword [esp + 0x74]
call fcn.101349b0
add esp, 0x1c
mov esi, dword [esp + 0x14]
mov edx, dword [esp + 0x9c]
test edx, edx
je 0x10132f88
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x10132f55
push 0
push 1
push edx
mov edx, 0x53
mov ecx, esi
call fcn.101008a0
add esp, 0xc
jmp 0x10132f88
mov edi, dword [esp + 0x3c]
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 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 + 0x6c], 0
je 0x10132fc1
mov ecx, dword [esp + 8]
push dword [esp + 0x24]
mov edx, dword [esp + 0x44]
push dword [esp + 0x94]
movsx eax, word [ecx + 0x2a]
sub edx, eax
sub edx, 2
push edx
mov edx, dword [esp + 0x78]
push ecx
push 2
push 0
push 0x74
mov ecx, edi
call fcn.10146ee0
add esp, 0x1c
mov ecx, dword [esi + 0xc]
mov edx, dword [esp + 0x24]
not edx
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x10132fdf
push edx
mov edx, esi
call fcn.10100ef0
add esp, 4
jmp 0x10132fe8
mov ecx, dword [ecx + 0x40]
mov eax, dword [esi + 0x6c]
mov dword [ecx + edx*4], eax
cmp byte [esp + 0xf], 0
je 0x101330d3
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x1013301a
mov edx, dword [esp + 0x8c]
mov ecx, esi
push 0
push edx
push dword [esp + 0x34]
mov edx, 5
call fcn.101008a0
add esp, 0xc
jmp 0x10133050
mov edx, dword [esp + 0x2c]
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4 + 4], edx
mov edx, dword [esp + 0x8c]
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 eax, dword [esi]
mov edx, dword [esi + 0x6c]
cmp byte [eax + 0x51], 0
je 0x10133062
mov eax, 0x102ad334
jmp 0x1013307a
mov ecx, dword [esp + 0x94]
lea eax, [edx - 1]
test ecx, ecx
cmovns eax, ecx
lea ecx, [eax + eax*4]
mov eax, dword [esi + 0x68]
lea eax, [eax + ecx*4]
mov dword [eax + 8], edx
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x1013309e
push 0
push 0
push dword [esp + 0x34]
mov edx, 0x75
mov ecx, esi
call fcn.101008a0
add esp, 0xc
jmp 0x10133115
mov edx, dword [esp + 0x2c]
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 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 0x10133115
cmp dword [esp + 0x34], 0
je 0x10133115
mov edx, dword [esp + 0x8c]
mov ecx, esi
call fcn.10100a80
mov eax, dword [esi]
mov edx, dword [esi + 0x6c]
cmp byte [eax + 0x51], 0
je 0x101330fa
mov eax, 0x102ad334
jmp 0x10133112
mov ecx, dword [esp + 0x94]
lea eax, [edx - 1]
test ecx, ecx
cmovns eax, ecx
lea ecx, [eax + eax*4]
mov eax, dword [esi + 0x68]
lea eax, [eax + ecx*4]
mov dword [eax + 8], edx
cmp byte [edi + 0x12], 0
jne 0x1013312e
cmp dword [edi + 0x78], 0
jne 0x1013312e
cmp dword [edi + 0x70], 0
je 0x1013312e
mov ecx, edi
call fcn.10131bb0
mov edx, dword [esp + 0x9c]
test edx, edx
je 0x101331b0
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x10133157
push 0
push 1
push edx
mov edx, 0x51
mov ecx, esi
call fcn.101008a0
add esp, 0xc
jmp 0x10133186
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 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, esi
call fcn.10102870
mov eax, dword [esi]
cmp byte [eax + 0x51], 0
jne 0x101331b0
mov ecx, dword [esi + 0x74]
mov edx, str.rows_inserted
push 0
push 1
push 0xffffffffffffffff
call fcn.100ffbb0
add esp, 0xc
mov esi, dword [esp + 0x10]
mov edi, dword [esp + 0x4c]
mov ecx, edi
mov edx, dword [esp + 0x74]
call fcn.101280d0
mov eax, dword [esp + 0x50]
test eax, eax
je 0x101331d4
mov edx, eax
mov ecx, edi
call fcn.10117e70
mov edx, dword [esp + 0x70]
mov ecx, edi
call fcn.10149300
mov eax, dword [esp + 0x34]
test eax, eax
je 0x101331f5
push 1
mov edx, eax
mov ecx, edi
call fcn.1013ad30
add esp, 4
mov edx, esi
mov ecx, edi
call fcn.10127cf0
mov ecx, dword [esp + 0x7c]
test ecx, ecx
je 0x1013326b
test edi, edi
je 0x10133262
cmp dword [edi + 0x1e0], 0
je 0x10133230
mov edx, ecx
mov ecx, edi
call fcn.100dfdb0
pop edi
pop esi
mov ecx, dword [esp + 0xc4]
xor ecx, esp
call fcn.101d506b
mov esp, ebp
pop ebp
ret
cmp ecx, dword [edi + 0x130]
jb 0x10133262
cmp ecx, dword [edi + 0x134]
jae 0x10133262
mov eax, dword [edi + 0x12c]
mov dword [ecx], eax
mov dword [edi + 0x12c], ecx
pop edi
pop esi
mov ecx, dword [esp + 0xc4]
xor ecx, esp
call fcn.101d506b
mov esp, ebp
pop ebp
ret
push ecx
call fcn.100dfd40
add esp, 4
mov ecx, dword [esp + 0xcc]
pop edi
pop esi
xor ecx, esp
call fcn.101d506b
mov esp, ebp
pop ebp
ret