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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0xd8
mov eax, dword [0x540020]
xor eax, esp
mov dword [esp + 0xd4], eax
mov eax, dword [ebp + 0xc]
push esi
mov dword [esp + 0x30], eax
mov eax, dword [ebp + 0x14]
push edi
mov edi, ecx
mov dword [esp + 0x9c], eax
mov ecx, dword [ebp + 8]
xor eax, eax
mov dword [esp + 0x74], eax
mov dword [esp + 0x70], eax
cmp dword [edi + 0x24], 0
mov byte [esp + 0x17], al
mov dword [esp + 0x50], eax
mov dword [esp + 0x7c], eax
mov dword [esp + 0x98], eax
mov dword [esp + 0x84], eax
mov eax, dword [edi]
mov dword [esp + 0x78], edx
mov dword [esp + 0xc], edi
mov dword [esp + 0x48], ecx
mov dword [esp + 0x4c], 0
mov dword [esp + 0x88], 0
mov dword [esp + 0x64], 0xffffffff
mov dword [esp + 0x28], 0
mov dword [esp + 0x58], eax
jne 0x485dc9
cmp byte [eax + 0x51], 0
jne 0x485dc9
mov dword [esp + 0xc8], 0
test ecx, ecx
je 0x483eaf
test dword [ecx + 8], 0x200
je 0x483eaf
cmp dword [ecx + 0x34], 0
jne 0x483eaf
mov edx, dword [ecx]
mov dword [esp + 0x50], edx
mov edx, ecx
mov dword [ecx], 0
mov ecx, eax
push 1
call fcn.004902f0
add esp, 4
mov dword [esp + 0x48], 0
mov edx, dword [esp + 0x78]
mov ecx, edi
call fcn.0047b850
mov esi, eax
mov dword [esp + 8], esi
test esi, esi
je 0x485dc9
mov ecx, dword [esi + 0x48]
mov edx, 0xfff0bdc0
mov dword [esp + 0x24], edx
test ecx, ecx
je 0x483efc
mov eax, dword [esp + 0x58]
xor edx, edx
mov dword [esp + 0x24], edx
mov eax, dword [eax + 0x10]
add eax, 0xc
cmp dword [eax], ecx
je 0x483efc
nop dword [eax]
lea eax, [eax + 0x10]
inc edx
cmp dword [eax], ecx
jne 0x483ef0
mov dword [esp + 0x24], edx
mov eax, dword [esp + 0x58]
add edx, edx
mov ecx, edi
mov eax, dword [eax + 0x10]
push dword [eax + edx*8]
mov edx, 0x12
push 0
push dword [esi]
call fcn.00471ff0
add esp, 0xc
test eax, eax
jne 0x485dc9
mov eax, dword [esi + 0x24]
xor edx, edx
shr eax, 5
and eax, 0xffffff01
mov dword [esp + 0x10], 0
mov dword [esp + 0x90], eax
mov eax, dword [edi]
mov eax, dword [eax + 0x20]
and eax, 0x40000
or eax, edx
je 0x483f58
mov edx, esi
mov ecx, edi
call fcn.0049cba0
mov edx, eax
xor esi, esi
mov ecx, edx
test edx, edx
je 0x483f77
cmp byte [ecx + 8], 0x78
jne 0x483f6c
movzx eax, byte [ecx + 9]
or esi, eax
mov ecx, dword [ecx + 0x20]
test ecx, ecx
jne 0x483f60
mov dword [esp + 0x10], esi
xor eax, eax
test esi, esi
cmovne eax, edx
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 8]
mov edx, eax
mov ecx, dword [eax + 0xc]
mov dword [esp + 0x94], ecx
mov ecx, edi
call fcn.00476220
test eax, eax
jne 0x485dc9
mov edx, dword [esp + 8]
mov ecx, edi
push esi
call fcn.0047b8e0
add esp, 4
test eax, eax
jne 0x485dc9
mov esi, dword [edi + 8]
mov dword [esp + 0x40], esi
test esi, esi
je 0x483fc9
mov dword [esp + 0x44], esi
jmp 0x483ff4
cmp dword [edi + 0x74], 0
jne 0x483fdb
mov eax, dword [edi]
test byte [eax + 0x4c], 8
jne 0x483fdb
mov byte [edi + 0x17], 1
mov ecx, edi
call fcn.0044cdd0
mov esi, eax
mov dword [esp + 0x40], esi
mov dword [esp + 0x44], esi
test esi, esi
je 0x485dc9
cmp byte [edi + 0x12], 0
jne 0x484001
or dword [esi + 0x98], 0x20
cmp dword [esp + 0x48], 0
jne 0x484014
cmp dword [esp + 0x6c], 0
mov byte [esp + 0x23], 0
je 0x484019
mov byte [esp + 0x23], 1
mov eax, dword [edi + 0x74]
test eax, eax
mov ecx, dword [esp + 0x24]
cmovne edi, eax
mov eax, 1
shl eax, cl
mov edx, dword [edi + 0x54]
test edx, eax
jne 0x484049
bts edx, ecx
mov dword [edi + 0x54], edx
cmp ecx, 1
jne 0x484049
mov ecx, edi
call fcn.00479fd0
mov ecx, dword [esp + 0x24]
mov eax, dword [edi + 0x50]
bts eax, ecx
mov dword [edi + 0x50], eax
mov al, byte [esp + 0x23]
or byte [edi + 0x14], al
cmp dword [esp + 0x34], 0
mov edi, dword [esp + 0xc]
jne 0x484086
mov edx, dword [esp + 8]
push ecx
push dword [ebp + 0x10]
mov ecx, edi
push dword [esp + 0x50]
call fcn.00487cc0
add esp, 0xc
test eax, eax
jne 0x485d2a
mov ecx, dword [esp + 0x24]
push dword [esp + 8]
mov edx, ecx
mov ecx, edi
call fcn.00483b40
mov ecx, dword [edi + 0x2c]
add esp, 4
mov edx, dword [esp + 8]
mov dword [esp + 0x38], eax
lea eax, [ecx + 1]
mov dword [esp + 0x68], eax
mov dword [esp + 0x30], eax
movsx eax, word [edx + 0x2a]
inc eax
add eax, ecx
mov dword [edi + 0x2c], eax
cmp dword [edx + 0x38], 0
je 0x4840cb
mov ecx, dword [esp + 0x68]
inc ecx
inc eax
mov dword [esp + 0x30], ecx
mov dword [edi + 0x2c], eax
jmp 0x4840cf
mov ecx, dword [esp + 0x30]
lea eax, [ecx + 1]
mov ecx, dword [edx + 0x24]
mov edx, dword [esp + 0x34]
shr ecx, 7
not cl
mov dword [esp + 0x80], eax
and ecx, 0xffffff01
mov dword [esp + 0x2c], ecx
test edx, edx
je 0x484295
mov eax, dword [edx + 4]
xor ecx, ecx
test eax, eax
jle 0x484112
mov eax, dword [edx]
mov dword [eax + ecx*8 + 4], 0xffffffff
inc ecx
mov eax, dword [edx + 4]
cmp ecx, eax
jl 0x484100
xor edx, edx
mov dword [esp + 0x18], edx
test eax, eax
jle 0x484295
mov eax, dword [esp + 8]
movzx eax, word [eax + 0x2a]
cwde
xor ecx, ecx
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x3c], eax
test eax, eax
jle 0x48423f
mov eax, dword [esp + 0x34]
mov eax, dword [eax]
mov edi, dword [eax + edx*8]
lea eax, [eax + edx*8]
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 8]
mov dword [esp + 0x54], edi
mov ecx, dword [eax + 4]
mov dword [esp + 0x5c], ecx
nop dword [eax]
mov al, byte [edi]
mov edx, dword [ecx]
mov byte [esp + 0x23], al
movzx eax, al
movzx ecx, byte [eax + 0x515a20]
movzx eax, byte [edx]
movzx eax, byte [eax + 0x515a20]
sub ecx, eax
jne 0x4841c9
mov eax, edi
sub eax, edx
mov dword [esp + 0x8c], eax
nop dword [eax + eax]
cmp byte [esp + 0x23], 0
mov edi, esi
mov ecx, dword [esp + 0x44]
je 0x4841e9
mov al, byte [eax + edx + 1]
inc edx
mov byte [esp + 0x23], al
movzx eax, al
movzx ecx, byte [eax + 0x515a20]
movzx eax, byte [edx]
movzx eax, byte [eax + 0x515a20]
sub ecx, eax
mov eax, dword [esp + 0x8c]
je 0x484190
mov edi, dword [esp + 0x54]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x5c]
inc eax
add ecx, 0x10
mov dword [esp + 0x1c], eax
mov dword [esp + 0x5c], ecx
cmp eax, dword [esp + 0x3c]
jl 0x484160
jmp 0x484237
mov eax, dword [esp + 0xc0]
xor edx, edx
mov esi, dword [esp + 0x1c]
cmp dword [esp + 0x18], esi
mov dword [esp + 0x44], ecx
mov dword [eax + 4], esi
mov esi, edi
mov eax, dword [esp + 0x2c]
movzx eax, al
cmove edx, eax
mov dword [esp + 0x40], esi
mov eax, dword [esp + 8]
mov byte [esp + 0x2c], dl
movsx eax, word [eax + 0x28]
cmp dword [esp + 0x1c], eax
jne 0x484237
mov eax, dword [esp + 0x18]
mov dword [esp + 0x64], eax
mov byte [esp + 0x2c], dl
mov dword [esp + 0x40], esi
mov dword [esp + 0x44], ecx
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 8]
movzx eax, word [eax + 0x2a]
cwde
cmp ecx, eax
jl 0x484277
mov eax, dword [esp + 0x34]
mov eax, dword [eax]
mov edi, dword [eax + edx*8]
mov ecx, edi
call fcn.00465a60
test eax, eax
je 0x4842cd
cmp byte [esp + 0x90], 0
jne 0x4842cd
mov edx, dword [esp + 0x18]
mov dword [esp + 0x64], edx
mov byte [esp + 0x2c], 0
mov ecx, dword [esp + 8]
inc edx
mov dword [esp + 0x18], edx
movzx eax, word [ecx + 0x2a]
mov ecx, dword [esp + 0x34]
cmp edx, dword [ecx + 4]
jl 0x484128
mov edi, dword [esp + 0xc]
cmp dword [esp + 0x48], 0
je 0x4848d1
inc dword [edi + 0x2c]
mov eax, dword [esi + 0x6c]
mov edi, dword [edi + 0x2c]
mov dword [esp + 0xc0], eax
lea edx, [eax + 1]
cmp dword [esi + 0x70], eax
jg 0x4842f2
push edx
push 0
push edi
mov edx, 0xd
mov ecx, esi
call fcn.0044d060
add esp, 0xc
jmp 0x48431e
mov esi, dword [esp + 0xc]
push edi
push 0
push dword [esp + 0x80]
push str.table__S_has_no_column_named__s
push esi
call fcn.0042fce0
add esp, 0x14
mov byte [esi + 0x11], 1
jmp 0x485dc9
lea ecx, [eax + eax*4]
mov dword [esi + 0x6c], edx
mov eax, dword [esi + 0x68]
mov esi, dword [esp + 0x40]
mov dword [eax + ecx*4], 0xd
mov dword [eax + ecx*4 + 4], edi
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], edx
mov dword [eax + ecx*4 + 0x10], 0
mov edx, dword [esp + 0x48]
xor eax, eax
cmp byte [esp + 0x2c], al
mov ecx, dword [esp + 0xc]
cmovne eax, dword [esp + 0x80]
mov dword [esp + 0xcc], eax
mov eax, dword [esp + 8]
mov byte [esp + 0xc4], 0xd
mov dword [esp + 0xc8], edi
mov dword [esp + 0xd4], 0
movsx eax, word [eax + 0x2a]
mov dword [esp + 0xd0], eax
lea eax, [esp + 0xc4]
push eax
call fcn.00499b20
mov ecx, dword [esp + 0xd0]
add esp, 4
mov dword [esp + 0x7c], ecx
test eax, eax
jne 0x485dc9
mov eax, dword [esp + 0x58]
cmp byte [eax + 0x51], 0
jne 0x485dc9
mov eax, dword [esp + 0xc]
cmp dword [eax + 0x24], 0
jne 0x485dc9
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x4843c1
push 0
push 0
push edi
mov edx, 0x43
mov ecx, esi
call fcn.0044d060
add esp, 0xc
jmp 0x4843f0
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x43
mov dword [eax + ecx*4 + 4], edi
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esi + 0xc]
mov byte [eax + 0x13], 0
mov eax, dword [esi + 0xc]
mov dword [eax + 0x1c], 0
mov eax, dword [esi]
mov edx, dword [esi + 0x6c]
cmp byte [eax + 0x51], 0
je 0x484413
mov eax, 0x55011c
jmp 0x48442b
mov ecx, dword [esp + 0xc0]
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]
cmp dword [esp + 0x6c], 0
mov dword [eax + 8], edx
mov eax, dword [esp + 0x48]
mov eax, dword [eax]
mov edi, dword [eax]
mov dword [esp + 0x2c], edi
jne 0x484602
mov edi, dword [esp + 0xc]
mov eax, dword [edi + 8]
mov dword [esp + 0x1c], eax
test eax, eax
jne 0x484470
cmp dword [edi + 0x74], eax
jne 0x484465
mov eax, dword [edi]
test byte [eax + 0x4c], 8
jne 0x484465
mov byte [edi + 0x17], 1
mov ecx, edi
call fcn.0044cdd0
mov dword [esp + 0x1c], eax
mov edx, dword [esp + 8]
mov ecx, dword [eax + 0x6c]
cmp dword [edx + 0x38], 0
je 0x484497
mov edx, dword [edx + 0x40]
test edx, edx
je 0x484499
mov eax, dword [edi]
cmp dword [edx], eax
je 0x484491
mov edx, dword [edx + 0x18]
test edx, edx
jne 0x484486
mov eax, dword [esp + 0x1c]
jmp 0x484499
xor edx, edx
mov edi, 1
cmp ecx, edi
jle 0x48452c
mov eax, dword [eax]
mov al, byte [eax + 0x51]
mov byte [esp + 0x23], al
nop
mov eax, edi
test edi, edi
jns 0x4844b9
lea eax, [ecx - 1]
cmp byte [esp + 0x23], 0
je 0x4844c7
mov eax, 0x55011c
jmp 0x4844d4
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, 0x6c
jne 0x484512
mov ecx, dword [esp + 0x24]
cmp dword [eax + 0xc], ecx
jne 0x484520
mov ecx, dword [eax + 8]
mov eax, dword [esp + 8]
cmp ecx, dword [eax + 0x1c]
je 0x4845fe
mov eax, dword [eax + 8]
test eax, eax
je 0x484520
nop dword [eax + eax]
cmp ecx, dword [eax + 0x2c]
je 0x4845fe
mov eax, dword [eax + 0x14]
test eax, eax
jne 0x484500
jmp 0x484520
cmp cl, 0xa3
jne 0x484520
cmp dword [eax + 0x10], edx
je 0x4845fe
mov eax, dword [esp + 0x1c]
inc edi
mov ecx, dword [eax + 0x6c]
cmp edi, ecx
jl 0x4844b0
mov eax, dword [esp + 0x2c]
cmp dword [esp + 0x34], 0
mov ecx, dword [esp + 8]
jne 0x484547
test eax, eax
jle 0x484547
movsx eax, word [ecx + 0x28]
mov dword [esp + 0x64], eax
movsx edx, word [ecx + 0x2a]
xor eax, eax
mov dword [esp + 0x3c], 0
mov dword [esp + 0x54], 0
cmp edx, 2
jl 0x48496e
mov eax, dword [ecx + 4]
lea edi, [edx - 2]
shr edi, 1
inc edi
mov dword [esp + 0x60], eax
lea ecx, [eax + 0x1f]
lea eax, [edi + edi]
mov dword [esp + 0xc0], eax
movzx eax, byte [ecx - 0x10]
lea ecx, [ecx + 0x20]
shr eax, 1
and eax, 1
add dword [esp + 0x3c], eax
movzx eax, byte [ecx - 0x20]
shr eax, 1
and eax, 1
add dword [esp + 0x54], eax
sub edi, 1
jne 0x484580
mov eax, dword [esp + 0xc0]
cmp eax, edx
jl 0x484990
xor eax, eax
mov ecx, dword [esp + 0x34]
test ecx, ecx
jne 0x4849a5
mov ecx, dword [esp + 0x2c]
test ecx, ecx
je 0x4849c8
sub edx, dword [esp + 0x54]
sub edx, dword [esp + 0x3c]
sub edx, eax
cmp ecx, edx
je 0x4849c8
push ecx
push edx
push 0
push dword [esp + 0x84]
push str.table__S_has__d_columns_but__d_values_were_supplied
push dword [esp + 0x20]
call fcn.0042fce0
add esp, 0x18
jmp 0x485dc9
mov edi, dword [esp + 0x2c]
mov edx, dword [esp + 0xc]
mov byte [esp + 0x17], 1
mov eax, dword [edx + 0x28]
mov cl, byte [edx + 0x13]
mov dword [esp + 0x28], eax
inc eax
mov dword [edx + 0x28], eax
test cl, cl
jne 0x48462f
inc dword [edx + 0x2c]
mov eax, dword [edx + 0x2c]
inc dword [edx + 0x2c]
mov dword [esp + 0x24], eax
mov eax, dword [edx + 0x2c]
jmp 0x48465c
sub cl, 1
movzx eax, cl
mov byte [edx + 0x13], cl
mov eax, dword [edx + eax*4 + 0x94]
mov dword [esp + 0x24], eax
jne 0x48464d
inc dword [edx + 0x2c]
mov eax, dword [edx + 0x2c]
jmp 0x48465c
dec cl
movzx eax, cl
mov byte [edx + 0x13], cl
mov eax, dword [edx + eax*4 + 0x94]
mov ecx, dword [esi + 0x6c]
mov dword [esp + 0x1c], eax
cmp dword [esi + 0x70], ecx
jg 0x484680
push 0
push edi
push dword [esp + 0x30]
mov edx, 0x71
mov ecx, esi
call fcn.0044d060
add esp, 0xc
jmp 0x4846af
mov edx, dword [esp + 0x28]
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x71
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 edi, dword [esi + 0x6c]
mov edx, dword [esp + 0xc8]
cmp dword [esi + 0x70], edi
jg 0x4846d6
push 0
push 0
push edx
mov edx, 0xe
mov ecx, esi
call fcn.0044d060
add esp, 0xc
mov edi, eax
jmp 0x484709
lea eax, [edi + 1]
mov dword [esi + 0x6c], eax
lea ecx, [edi + edi*4]
mov eax, dword [esi + 0x68]
mov esi, dword [esp + 0x40]
mov dword [eax + ecx*4], 0xe
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
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x484732
push dword [esp + 0x24]
mov edx, dword [esp + 0x30]
mov ecx, esi
push edx
push dword [esp + 0x84]
mov edx, 0x5c
call fcn.0044d060
add esp, 0xc
jmp 0x484765
mov edx, dword [esp + 0x7c]
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 + 0x2c]
mov dword [eax + ecx*4 + 8], edx
mov edx, dword [esp + 0x24]
mov dword [eax + ecx*4], 0x5c
mov dword [eax + ecx*4 + 0xc], edx
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x48478d
mov edx, dword [esp + 0x1c]
mov ecx, esi
push 0
push edx
push dword [esp + 0x30]
mov edx, 0x79
call fcn.0044d060
mov edx, dword [esp + 0x28]
add esp, 0xc
jmp 0x4847c0
mov edx, dword [esp + 0x28]
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 + 0x1c]
mov dword [eax + ecx*4], 0x79
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x4847e2
push edx
push dword [esp + 0x28]
mov edx, 0x7a
mov ecx, esi
push dword [esp + 0x30]
call fcn.0044d060
add esp, 0xc
jmp 0x484815
mov edx, dword [esp + 0x28]
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 + 0x24]
mov dword [eax + ecx*4 + 8], edx
mov edx, dword [esp + 0x1c]
mov dword [eax + ecx*4], 0x7a
mov dword [eax + ecx*4 + 0xc], edx
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x484833
push 0
push edi
push 0
mov edx, 0xb
mov ecx, esi
call fcn.0044d060
add esp, 0xc
jmp 0x484862
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0xb
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], edi
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 0x484874
mov eax, 0x55011c
jmp 0x484885
test edi, edi
lea eax, [edx - 1]
cmovns eax, edi
lea ecx, [eax + eax*4]
mov eax, dword [esi + 0x68]
lea eax, [eax + ecx*4]
mov ecx, dword [esp + 0x24]
mov edi, dword [esp + 0xc]
mov dword [eax + 8], edx
test ecx, ecx
je 0x4848a8
mov al, byte [edi + 0x13]
cmp al, 8
jae 0x4848a8
movzx eax, al
mov dword [edi + eax*4 + 0x94], ecx
inc byte [edi + 0x13]
mov ecx, dword [esp + 0x1c]
test ecx, ecx
je 0x48452c
mov al, byte [edi + 0x13]
cmp al, 8
jae 0x48452c
movzx eax, al
mov dword [edi + eax*4 + 0x94], ecx
inc byte [edi + 0x13]
jmp 0x48452c
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 + 0x28], 0xffffffff
test ecx, ecx
je 0x484963
mov eax, dword [ecx]
mov dword [esp + 0x2c], eax
mov dword [esp + 0x5c], 0
test eax, eax
jle 0x484530
lea edi, [ecx + 4]
nop dword [eax]
nop dword [eax + eax]
mov edx, dword [edi]
lea ecx, [esp + 0xa0]
call fcn.00462e30
test eax, eax
jne 0x48494b
mov eax, dword [esp + 0x5c]
add edi, 0x18
mov ecx, dword [esp + 0x50]
inc eax
mov dword [esp + 0x5c], eax
cmp eax, dword [ecx]
jl 0x484920
jmp 0x48452c
mov edi, dword [esp + 0x58]
mov ecx, edi
mov edx, dword [esp + 0x78]
call fcn.004798a0
mov eax, dword [esp + 0x50]
jmp 0x485de0
xor eax, eax
mov dword [esp + 0x2c], eax
jmp 0x484530
test edx, edx
jle 0x4845b1
mov ecx, dword [ecx + 4]
add eax, eax
movzx eax, byte [ecx + eax*8 + 0xf]
shr eax, 1
and eax, 1
jmp 0x4845b3
mov ecx, dword [esp + 0x60]
add eax, eax
movzx eax, byte [ecx + eax*8 + 0xf]
shr eax, 1
and eax, 1
jmp 0x4845b3
mov eax, dword [ecx + 4]
mov ecx, dword [esp + 0x2c]
cmp ecx, eax
je 0x4849c8
push eax
push ecx
push str._d_values_for__d_columns
push dword [esp + 0x18]
call fcn.0042fce0
add esp, 0x10
jmp 0x485dc9
mov eax, dword [esp + 0x58]
mov eax, dword [eax + 0x20]
and eax, 0x80
or eax, 0
mov eax, dword [esp + 0xc]
je 0x484a47
cmp byte [eax + 0x12], 0
jne 0x484a47
cmp dword [eax + 0x78], 0
jne 0x484a47
inc dword [eax + 0x2c]
mov ecx, dword [esi + 0x6c]
mov edx, dword [eax + 0x2c]
mov dword [esp + 0x98], edx
cmp dword [esi + 0x70], ecx
jg 0x484a14
push 0
push edx
push 0
mov edx, 0x46
mov ecx, esi
call fcn.0044d060
add esp, 0xc
jmp 0x484a43
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x46
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0xc]
cmp dword [esp + 0x94], 0
jne 0x484ad7
mov edx, dword [esp + 8]
lea ecx, [esp + 0x88]
push ecx
lea ecx, [esp + 0x50]
push ecx
push 0
push 0xffffffffffffffff
push 0
push 0x6d
mov ecx, eax
call fcn.004879c0
mov ecx, dword [esp + 0x70]
mov edi, eax
push 0
lea eax, [edi*4 + 4]
push eax
call fcn.0042ca80
add esp, 0x20
mov dword [esp + 0x84], eax
test eax, eax
je 0x485dc9
mov eax, dword [esp + 8]
xor ecx, ecx
mov edx, dword [eax + 8]
test edi, edi
jle 0x484adb
mov esi, dword [esp + 0xc]
nop dword [eax]
inc dword [esi + 0x2c]
mov eax, dword [esi + 0x2c]
mov esi, dword [esp + 0x84]
mov dword [esi + ecx*4], eax
inc ecx
mov esi, dword [esp + 0xc]
movzx eax, word [edx + 0x34]
add dword [esi + 0x2c], eax
mov edx, dword [edx + 0x14]
cmp ecx, edi
jl 0x484ab0
mov esi, dword [esp + 0x40]
mov eax, dword [esp + 8]
mov edi, dword [esp + 0x9c]
test edi, edi
je 0x484b38
cmp dword [eax + 0x38], 0
je 0x484b01
push dword [eax]
push str.UPSERT_not_implemented_for_virtual_table___s_
push dword [esp + 0x14]
call fcn.0042fce0
jmp 0x485dc6
mov edx, dword [esp + 0x78]
mov ecx, dword [esp + 0x4c]
mov eax, dword [esp + 0x80]
mov dword [edx + 0x34], ecx
cmp dword [edi], 0
mov dword [edi + 0x18], eax
mov eax, dword [esp + 0x88]
mov dword [edi + 0x14], edx
mov dword [edi + 0x1c], ecx
mov dword [edi + 0x20], eax
je 0x484b38
mov ecx, dword [esp + 0xc]
push edi
call fcn.004a0fc0
add esp, 4
cmp byte [esp + 0x17], 0
je 0x484bae
mov edi, dword [esi + 0x6c]
mov dword [esp + 0x74], edi
cmp dword [esi + 0x70], edi
jg 0x484b72
push 0
push 0
push dword [esp + 0x30]
mov edx, 0x24
mov ecx, esi
call fcn.0044d060
mov ecx, dword [esi + 0x6c]
add esp, 0xc
mov dword [esp + 0x74], eax
mov dword [esp + 0x70], ecx
jmp 0x484c1b
mov edx, dword [esp + 0x28]
lea eax, [edi + 1]
mov dword [esi + 0x6c], eax
lea ecx, [edi + edi*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x24
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
mov ecx, dword [esi + 0x6c]
mov dword [esp + 0x70], ecx
jmp 0x484c1b
cmp dword [esp + 0x48], 0
je 0x484c1b
mov edi, dword [esi + 0x6c]
mov edx, dword [esp + 0xc8]
mov dword [esp + 0x74], edi
cmp dword [esi + 0x70], edi
jg 0x484be4
push 0
push 0
push edx
mov edx, 0xe
mov ecx, esi
call fcn.0044d060
mov edi, eax
add esp, 0xc
mov dword [esp + 0x74], edi
jmp 0x484c17
lea eax, [edi + 1]
mov dword [esi + 0x6c], eax
lea ecx, [edi + edi*4]
mov eax, dword [esi + 0x68]
mov esi, dword [esp + 0x40]
mov dword [eax + ecx*4], 0xe
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
mov dword [esp + 0x70], edi
mov edx, dword [esp + 0xc]
dec dword [edx + 0x38]
test byte [esp + 0x10], 1
mov eax, dword [edx + 0x38]
mov dword [esp + 0x54], eax
je 0x48518a
mov eax, dword [esp + 8]
movsx ecx, word [eax + 0x2a]
inc ecx
cmp ecx, 1
jne 0x484c6a
mov al, byte [edx + 0x13]
test al, al
jne 0x484c55
inc dword [edx + 0x2c]
mov eax, dword [edx + 0x2c]
mov dword [esp + 0x10], eax
jmp 0x484c9c
dec al
mov byte [edx + 0x13], al
movzx eax, al
mov eax, dword [edx + eax*4 + 0x94]
mov dword [esp + 0x10], eax
jmp 0x484c9c
mov edi, dword [edx + 0x20]
mov edx, dword [edx + 0x1c]
mov dword [esp + 0x10], edi
cmp ecx, edx
jg 0x484c89
lea eax, [ecx + edi]
sub edx, ecx
mov edi, dword [esp + 0xc]
mov dword [edi + 0x20], eax
mov dword [edi + 0x1c], edx
jmp 0x484c9c
mov edi, dword [esp + 0xc]
mov eax, dword [edi + 0x2c]
lea edx, [eax + 1]
add eax, ecx
mov dword [esp + 0x10], edx
mov dword [edi + 0x2c], eax
mov edi, dword [esp + 0x64]
test edi, edi
jns 0x484d0c
mov ecx, dword [esi + 0x6c]
lea edx, [esi + 0x6c]
lea eax, [esi + 0x70]
mov dword [esp + 0x1c], edx
mov dword [esp + 0x24], eax
cmp dword [eax], ecx
jg 0x484cd5
push 0
push dword [esp + 0x14]
mov edx, 0x46
mov ecx, esi
push 0xffffffffffffffff
call fcn.0044d060
add esp, 0xc
jmp 0x484eea
lea eax, [ecx + 1]
mov dword [edx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov edx, dword [esp + 0x10]
mov dword [eax + ecx*4], 0x46
mov dword [eax + ecx*4 + 4], 0xffffffff
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
jmp 0x484eea
cmp byte [esp + 0x17], 0
je 0x484d7f
mov ecx, dword [esi + 0x6c]
lea edx, [esi + 0x6c]
lea eax, [esi + 0x70]
mov dword [esp + 0x1c], edx
mov dword [esp + 0x24], eax
cmp dword [eax], ecx
jg 0x484d48
push dword [esp + 0x10]
mov edx, 0x5a
mov ecx, esi
push edi
push dword [esp + 0x30]
call fcn.0044d060
add esp, 0xc
lea edx, [esi + 0x6c]
lea eax, [esi + 0x70]
jmp 0x484dac
mov edi, dword [esp + 0x28]
lea eax, [ecx + 1]
mov dword [edx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4 + 4], edi
mov edi, dword [esp + 0x64]
mov dword [eax + ecx*4 + 8], edi
mov edi, dword [esp + 0x10]
mov dword [eax + ecx*4], 0x5a
mov dword [eax + ecx*4 + 0xc], edi
mov dword [eax + ecx*4 + 0x10], 0
lea eax, [esi + 0x70]
jmp 0x484dac
mov eax, dword [esp + 0x50]
lea edx, [edi + edi*2]
push dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
mov edx, dword [eax + edx*8 + 4]
call fcn.0046a760
mov eax, dword [esp + 0x48]
add esp, 4
lea edx, [eax + 0x6c]
add eax, 0x70
mov dword [esp + 0x1c], edx
mov dword [esp + 0x24], eax
mov edi, dword [edx]
cmp dword [eax], edi
jg 0x484dd1
push 0
push 0
push dword [esp + 0x18]
mov edx, 0x33
mov ecx, esi
call fcn.0044d060
mov edx, dword [esp + 0x28]
add esp, 0xc
mov edi, eax
jmp 0x484e07
lea eax, [edi + 1]
mov dword [edx], eax
lea ecx, [edi + edi*4]
mov eax, dword [esi + 0x68]
mov esi, dword [esp + 0x10]
mov dword [eax + ecx*4 + 4], esi
mov esi, dword [esp + 0x40]
mov dword [eax + ecx*4], 0x33
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x24]
mov ecx, dword [edx]
cmp dword [eax], ecx
jg 0x484e2a
push 0
push dword [esp + 0x14]
mov edx, 0x46
mov ecx, esi
push 0xffffffffffffffff
call fcn.0044d060
add esp, 0xc
jmp 0x484e5c
lea eax, [ecx + 1]
mov dword [edx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov edx, dword [esp + 0x10]
mov dword [eax + ecx*4], 0x46
mov dword [eax + ecx*4 + 4], 0xffffffff
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 [esp + 0x1c]
cmp byte [eax + 0x51], 0
mov edx, dword [edx]
je 0x484e71
mov eax, 0x55011c
jmp 0x484e82
test edi, edi
lea eax, [edx - 1]
cmovns eax, edi
lea ecx, [eax + eax*4]
mov eax, dword [esi + 0x68]
lea eax, [eax + ecx*4]
mov dword [eax + 8], edx
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x24]
mov ecx, dword [edx]
cmp dword [eax], ecx
jg 0x484eac
push 0
push 0
push dword [esp + 0x18]
mov edx, 0xf
mov ecx, esi
call fcn.0044d060
add esp, 0xc
jmp 0x484eea
mov edi, dword [esp + 0x10]
lea eax, [ecx + 1]
mov dword [edx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [esp + 0x1c], edx
mov dword [eax + ecx*4], 0xf
mov dword [eax + ecx*4 + 4], edi
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x24]
mov dword [esp + 0x24], eax
mov edx, dword [esp + 8]
xor edi, edi
mov dword [esp + 0xc0], edi
movzx eax, word [edx + 0x2a]
mov ecx, eax
cmp di, ax
jge 0x485101
mov eax, dword [esp + 0x10]
xor ecx, ecx
mov dword [esp + 0x3c], ecx
lea edx, [eax + 1]
not eax
mov dword [esp + 0x18], edx
mov dword [esp + 0x5c], eax
nop dword [eax]
cmp dword [esp + 0x34], 0
je 0x484f5f
mov edx, dword [esp + 0x34]
xor edi, edi
mov edx, dword [edx + 4]
test edx, edx
jle 0x484f5b
mov ecx, dword [esp + 0x34]
mov esi, dword [esp + 0x18]
mov ecx, dword [ecx]
add ecx, 4
add eax, esi
cmp dword [ecx], eax
je 0x484f53
mov eax, dword [esp + 0x5c]
inc edi
add ecx, 8
cmp edi, edx
jl 0x484f41
mov esi, dword [esp + 0x40]
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x18]
cmp byte [esp + 0x17], 0
jne 0x484f6d
cmp dword [esp + 0x50], 0
je 0x484f7a
mov eax, dword [esp + 0x34]
test eax, eax
je 0x484f9b
cmp edi, dword [eax + 4]
jl 0x484f9b
mov eax, dword [esp + 8]
push edx
mov edx, dword [eax + 4]
mov edx, dword [edx + ecx + 4]
mov ecx, dword [esp + 0x10]
call fcn.0046a760
mov edx, dword [esp + 0x1c]
add esp, 4
jmp 0x4850bf
cmp byte [esp + 0x17], 0
je 0x485005
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax]
mov eax, dword [esp + 0x24]
cmp dword [eax], ecx
jg 0x484fce
push edx
push edi
push dword [esp + 0x30]
mov edx, 0x5a
mov ecx, esi
call fcn.0044d060
mov edx, dword [esp + 0x24]
add esp, 0xc
jmp 0x4850bf
mov edx, dword [esp + 0x1c]
lea eax, [ecx + 1]
lea ecx, [ecx + ecx*4]
mov dword [edx], eax
mov eax, dword [esi + 0x68]
mov edx, dword [esp + 0x28]
mov dword [eax + ecx*4 + 4], edx
mov edx, dword [esp + 0x18]
mov dword [eax + ecx*4], 0x5a
mov dword [eax + ecx*4 + 8], edi
mov dword [eax + ecx*4 + 0xc], edx
mov dword [eax + ecx*4 + 0x10], 0
jmp 0x4850bf
mov ecx, dword [esp + 0x50]
lea eax, [edi + edi*2]
push dword [esp + 0x18]
mov edx, dword [ecx + eax*8 + 4]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xc4], edx
mov eax, dword [ecx + 8]
mov dword [esp + 0x90], eax
call fcn.0046a760
mov eax, dword [esp + 0x10]
add esp, 4
mov ecx, dword [esp + 0x8c]
inc dword [eax + 0x2c]
mov edx, dword [ecx + 0x6c]
mov eax, dword [eax + 0x2c]
mov dword [esp + 0x60], eax
cmp dword [ecx + 0x70], edx
jg 0x485068
push 0
push eax
push dword [esp + 0x20]
mov edx, 0x4e
call fcn.0044d060
mov edx, dword [esp + 0x24]
add esp, 0xc
jmp 0x4850a2
mov esi, dword [esp + 0x60]
lea eax, [edx + 1]
mov dword [ecx + 0x6c], eax
lea ecx, [edx + edx*4]
mov eax, dword [esp + 0x8c]
mov edx, dword [esp + 0x18]
mov eax, dword [eax + 0x68]
mov dword [eax + ecx*4], 0x4e
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
mov ecx, dword [esp + 0xc0]
mov al, byte [ecx]
and dword [ecx + 4], 0xffffefff
mov byte [ecx + 0x26], al
mov eax, dword [esp + 0x60]
mov byte [ecx], 0xa8
mov dword [ecx + 0x1c], eax
add dword [esp + 0x3c], 0x10
lea eax, [edi + 1]
mov esi, dword [esp + 8]
inc edx
cmp dword [esp + 0x34], 0
mov ecx, dword [esp + 0x5c]
cmovne eax, edi
mov dword [esp + 0x18], edx
mov edi, eax
add ecx, edx
movzx eax, word [esi + 0x2a]
mov esi, dword [esp + 0x40]
cwde
cmp ecx, eax
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x3c]
jl 0x484f20
mov edx, dword [esp + 8]
movzx ecx, word [edx + 0x2a]
cmp dword [esp + 0x94], 0
mov edi, dword [esp + 0x10]
movzx eax, cx
jne 0x485128
lea eax, [edi + 1]
mov ecx, esi
push eax
call fcn.004839a0
mov edx, dword [esp + 0xc]
add esp, 4
movzx eax, word [edx + 0x2a]
push dword [esp + 0x54]
cwde
mov ecx, edi
push dword [ebp + 0x10]
sub ecx, eax
dec ecx
push ecx
mov ecx, dword [esp + 0x18]
push edx
mov edx, dword [esp + 0x7c]
push 1
push 0
push 0x78
call fcn.0049e820
mov ecx, dword [esp + 0x24]
add esp, 0x1c
movsx eax, word [ecx + 0x2a]
inc eax
cmp eax, 1
jne 0x485179
test edi, edi
je 0x48518e
mov edx, dword [esp + 0xc]
mov al, byte [edx + 0x13]
cmp al, 8
jae 0x48518e
movzx eax, al
mov dword [edx + eax*4 + 0x94], edi
inc byte [edx + 0x13]
jmp 0x48518e
mov edx, dword [esp + 0xc]
cmp eax, dword [edx + 0x1c]
jle 0x48518e
mov dword [edx + 0x1c], eax
mov dword [edx + 0x20], edi
jmp 0x48518e
mov ecx, dword [esp + 8]
cmp dword [esp + 0x94], 0
jne 0x485aff
cmp dword [ecx + 0x38], 0
je 0x4851fa
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x4851c3
push 0
push dword [esp + 0x6c]
mov edx, 0x49
mov ecx, esi
push 0
call fcn.0044d060
add esp, 0xc
jmp 0x4851f6
mov edx, dword [esp + 0x68]
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x49
mov dword [eax + ecx*4 + 4], 0
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 + 8]
mov eax, dword [esp + 0x64]
test eax, eax
js 0x485582
cmp byte [esp + 0x17], 0
je 0x48527a
mov ecx, dword [esi + 0x6c]
lea edi, [esi + 0x6c]
lea edx, [esi + 0x70]
mov dword [esp + 0x18], edi
mov dword [esp + 0x10], edx
cmp dword [edx], ecx
jg 0x48523f
push dword [esp + 0x30]
mov edx, 0x5a
mov ecx, esi
push eax
push dword [esp + 0x30]
call fcn.0044d060
add esp, 0xc
jmp 0x4853b4
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov esi, dword [esp + 0x28]
mov dword [eax + ecx*4 + 4], esi
mov esi, dword [esp + 0x64]
mov dword [eax + ecx*4 + 8], esi
mov esi, dword [esp + 0x30]
mov dword [eax + ecx*4 + 0xc], esi
mov esi, dword [esp + 0x40]
mov dword [eax + ecx*4], 0x5a
mov dword [eax + ecx*4 + 0x10], 0
jmp 0x4853ac
cmp dword [esp + 0x48], 0
je 0x4852ef
mov edx, dword [esp + 0x7c]
lea edi, [esi + 0x6c]
mov ecx, dword [edi]
add edx, eax
lea eax, [esi + 0x70]
mov dword [esp + 0x18], edi
mov dword [esp + 0x10], eax
cmp dword [eax], ecx
jg 0x4852b6
push 0
push dword [esp + 0x34]
mov ecx, esi
push edx
mov edx, 0x4e
call fcn.0044d060
add esp, 0xc
jmp 0x4853b4
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
lea edi, [esi + 0x6c]
mov dword [eax + ecx*4 + 4], edx
mov edx, dword [esp + 0x30]
mov dword [eax + ecx*4 + 8], edx
lea edx, [esi + 0x70]
mov dword [eax + ecx*4], 0x4e
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
jmp 0x4853ac
mov edx, dword [esp + 0x50]
lea eax, [eax + eax*2]
mov edx, dword [edx + eax*8 + 4]
cmp byte [edx], 0x72
jne 0x485392
cmp dword [ecx + 0x38], 0
jne 0x485392
mov edx, dword [esi + 0x6c]
lea ecx, [esi + 0x6c]
lea edi, [esi + 0x70]
mov dword [esp + 0x18], ecx
mov dword [esp + 0x10], edi
cmp dword [edi], edx
jg 0x48534f
mov edx, dword [esp + 0x38]
mov ecx, esi
push edx
push dword [esp + 0x34]
mov edx, 0x79
push dword [esp + 0x54]
call fcn.0044d060
mov edi, dword [esp + 0x24]
add esp, 0xc
mov dword [esp + 0x44], 1
jmp 0x48567b
mov edi, dword [esp + 0x18]
lea eax, [edx + 1]
mov dword [ecx], eax
lea ecx, [edx + edx*4]
mov eax, dword [esi + 0x68]
mov edx, dword [esp + 0x4c]
mov dword [esp + 0x44], 1
mov dword [eax + ecx*4 + 4], edx
mov edx, dword [esp + 0x30]
mov dword [eax + ecx*4 + 8], edx
mov edx, dword [esp + 0x38]
mov dword [eax + ecx*4], 0x79
mov dword [eax + ecx*4 + 0xc], edx
mov dword [eax + ecx*4 + 0x10], 0
jmp 0x48567b
push dword [esp + 0x30]
mov ecx, dword [esp + 0x10]
call fcn.0046a760
mov eax, dword [esp + 0x48]
add esp, 4
lea edi, [eax + 0x6c]
lea edx, [eax + 0x70]
mov dword [esp + 0x18], edi
mov dword [esp + 0x10], edx
mov ecx, dword [esp + 8]
mov eax, dword [esp + 0x10]
mov edx, dword [edi]
mov dword [esp + 0x60], edx
cmp dword [ecx + 0x38], 0
mov eax, dword [eax]
jne 0x4854aa
cmp eax, edx
jg 0x4853f3
push 0
push 0
push dword [esp + 0x38]
mov edx, 0x33
mov ecx, esi
call fcn.0044d060
mov edx, dword [esp + 0x3c]
add esp, 0xc
mov dword [esp + 0x60], eax
jmp 0x485425
lea eax, [edx + 1]
mov dword [edi], eax
lea ecx, [edx + edx*4]
mov eax, dword [esi + 0x68]
mov edx, dword [esp + 0x30]
mov dword [eax + ecx*4], 0x33
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
mov eax, dword [esp + 0x10]
mov ecx, dword [edi]
cmp dword [eax], ecx
jg 0x485449
push dword [esp + 0x38]
mov ecx, esi
push edx
push dword [esp + 0x54]
mov edx, 0x79
call fcn.0044d060
add esp, 0xc
jmp 0x48547b
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov edi, dword [esp + 0x4c]
mov dword [eax + ecx*4 + 8], edx
mov edx, dword [esp + 0x38]
mov dword [eax + ecx*4 + 4], edi
mov edi, dword [esp + 0x18]
mov dword [eax + ecx*4], 0x79
mov dword [eax + ecx*4 + 0xc], edx
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esi]
mov edx, dword [edi]
cmp byte [eax + 0x51], 0
je 0x48548f
mov eax, 0x55011c
mov dword [eax + 8], edx
jmp 0x485505
mov ecx, dword [esp + 0x60]
lea eax, [edx - 1]
test ecx, ecx
cmovns eax, ecx
lea ecx, [eax + eax*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4 + 8], edx
lea eax, [eax + ecx*4]
jmp 0x485505
lea ecx, [edx + 2]
mov dword [esp + 0xc0], ecx
cmp eax, edx
jg 0x4854d0
push 0
push ecx
push dword [esp + 0x38]
mov edx, 0x32
mov ecx, esi
call fcn.0044d060
add esp, 0xc
jmp 0x485505
lea eax, [edx + 1]
mov dword [edi], eax
lea ecx, [edx + edx*4]
mov eax, dword [esi + 0x68]
mov edx, dword [esp + 0x30]
mov dword [eax + ecx*4 + 4], edx
mov edx, dword [esp + 0xc0]
mov dword [eax + ecx*4], 0x32
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov edx, dword [esp + 0x10]
mov ecx, dword [edi]
cmp dword [edx], ecx
jg 0x485537
push 0
push 0
push dword [esp + 0x38]
mov edx, 0xf
mov ecx, esi
call fcn.0044d060
mov edi, dword [esp + 0x24]
add esp, 0xc
mov dword [esp + 0x44], 0
jmp 0x48567b
lea eax, [ecx + 1]
mov dword [esp + 0x18], edi
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov esi, dword [esp + 0x30]
mov dword [esp + 0x10], edx
mov dword [esp + 0x44], 0
mov dword [eax + ecx*4 + 4], esi
mov esi, dword [esp + 0x40]
mov dword [eax + ecx*4], 0xf
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
jmp 0x48567b
cmp dword [ecx + 0x38], 0
jne 0x485613
cmp byte [esp + 0x90], 0
jne 0x485613
mov ecx, dword [esi + 0x6c]
lea edi, [esi + 0x6c]
lea eax, [esi + 0x70]
mov dword [esp + 0x18], edi
mov dword [esp + 0x10], eax
cmp dword [eax], ecx
jg 0x4855d7
push dword [esp + 0x38]
mov edx, 0x79
mov ecx, esi
push dword [esp + 0x34]
push dword [esp + 0x54]
call fcn.0044d060
add esp, 0xc
mov dword [esp + 0x44], 1
jmp 0x48567b
mov edx, dword [esp + 0x4c]
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [esp + 0x44], 1
mov dword [eax + ecx*4 + 4], edx
mov edx, dword [esp + 0x30]
mov dword [eax + ecx*4 + 8], edx
mov edx, dword [esp + 0x38]
mov dword [eax + ecx*4], 0x79
mov dword [eax + ecx*4 + 0xc], edx
mov dword [eax + ecx*4 + 0x10], 0
jmp 0x48567b
mov ecx, dword [esi + 0x6c]
lea edi, [esi + 0x6c]
lea eax, [esi + 0x70]
mov dword [esp + 0x18], edi
mov dword [esp + 0x10], eax
cmp dword [eax], ecx
jg 0x485641
push 0
push dword [esp + 0x34]
mov edx, 0x49
mov ecx, esi
push 0
call fcn.0044d060
add esp, 0xc
jmp 0x485673
mov edx, dword [esp + 0x30]
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x49
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov dword [esp + 0x44], 0
push dword [esp + 0x30]
mov edx, dword [esp + 0x3c]
mov ecx, dword [esp + 0x10]
call fcn.00483c00
mov eax, dword [esp + 0xc]
xor ecx, ecx
xor edx, edx
mov dword [esp + 0x40], 0
add esp, 4
mov dword [esp + 0x24], ecx
cmp dx, word [eax + 0x2a]
jge 0x485928
mov dword [esp + 0x1c], ecx
mov edx, dword [esp + 0x80]
movsx eax, word [eax + 0x28]
add edx, ecx
mov dword [esp + 0x38], edx
cmp ecx, eax
jne 0x48571c
mov eax, dword [esp + 0x10]
mov ecx, dword [edi]
cmp dword [eax], ecx
jg 0x4856e9
push 0
push 0
push edx
mov edx, 0x4a
mov ecx, esi
call fcn.0044d060
add esp, 0xc
jmp 0x485902
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x4a
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
jmp 0x485902
mov eax, dword [esp + 0x34]
test eax, eax
jne 0x485761
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x1c]
mov eax, dword [eax + 4]
mov cl, byte [eax + ecx + 0xf]
mov eax, dword [esp + 0x3c]
and cl, 2
je 0x48574d
inc eax
or edx, 0xffffffff
test cl, cl
cmove eax, dword [esp + 0x3c]
mov dword [esp + 0x3c], eax
jmp 0x485783
mov edx, dword [esp + 0x24]
sub edx, eax
inc eax
test cl, cl
cmove eax, dword [esp + 0x3c]
mov dword [esp + 0x3c], eax
jmp 0x485783
mov ecx, dword [eax + 4]
xor edx, edx
test ecx, ecx
jle 0x48578f
mov eax, dword [eax]
mov edi, dword [esp + 0x24]
add eax, 4
cmp dword [eax], edi
je 0x48577f
inc edx
add eax, 8
cmp edx, ecx
jl 0x485773
mov edi, dword [esp + 0x18]
test edx, edx
js 0x485881
mov eax, dword [esp + 0x34]
cmp dword [esp + 0x2c], 0
je 0x485881
test eax, eax
je 0x4857a7
cmp edx, dword [eax + 4]
jge 0x485881
cmp byte [esp + 0x17], 0
je 0x485809
mov eax, dword [esp + 0x10]
mov ecx, dword [edi]
cmp dword [eax], ecx
jg 0x4857d6
mov edi, dword [esp + 0x38]
mov ecx, esi
push edi
push edx
push dword [esp + 0x30]
mov edx, 0x5a
call fcn.0044d060
add esp, 0xc
jmp 0x485902
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov edi, dword [esp + 0x28]
mov dword [eax + ecx*4 + 4], edi
mov edi, dword [esp + 0x38]
mov dword [eax + ecx*4], 0x5a
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], edi
mov dword [eax + ecx*4 + 0x10], 0
jmp 0x485902
cmp dword [esp + 0x48], 0
je 0x485868
mov eax, dword [esp + 0x7c]
cmp eax, dword [esp + 0x80]
je 0x485902
mov ecx, dword [edi]
add edx, eax
mov eax, dword [esp + 0x10]
cmp dword [eax], ecx
jg 0x485849
mov edi, dword [esp + 0x38]
mov ecx, esi
push 0
push edi
push edx
mov edx, 0x4f
call fcn.0044d060
add esp, 0xc
jmp 0x485902
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov edi, dword [esp + 0x38]
mov dword [eax + ecx*4], 0x4f
mov dword [eax + ecx*4 + 8], edi
jmp 0x485703
mov eax, dword [esp + 0x50]
lea edx, [edx + edx*2]
mov edi, dword [esp + 0x38]
mov ecx, dword [esp + 0xc]
push edi
mov edx, dword [eax + edx*8 + 4]
jmp 0x4858fa
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x1c]
mov eax, dword [eax + 4]
mov edi, dword [eax + ecx + 4]
mov eax, dword [esp + 0xc]
cmp byte [eax + 0x17], 0
je 0x4858f2
mov byte [esp + 0xb4], 2
mov dword [esp + 0xa4], fcn.00465670
mov dword [esp + 0xa8], 0x465590
mov dword [esp + 0xb8], 0
test edi, edi
je 0x4858e3
mov edx, edi
lea ecx, [esp + 0xa0]
call fcn.00460670
cmp byte [esp + 0xb4], 0
mov eax, dword [esp + 0xc]
je 0x4858f2
push dword [esp + 0x38]
mov edx, edi
mov ecx, eax
call fcn.0046a580
jmp 0x4858ff
push dword [esp + 0x38]
mov edx, edi
mov ecx, eax
call fcn.0046a760
add esp, 4
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x24]
add dword [esp + 0x1c], 0x10
inc ecx
mov edi, dword [esp + 0x18]
movsx eax, word [eax + 0x2a]
cmp ecx, eax
mov dword [esp + 0x24], ecx
mov eax, dword [esp + 8]
jl 0x4856b1
cmp dword [eax + 0x38], 0
je 0x485a21
mov edi, dword [eax + 0x40]
test edi, edi
je 0x48594b
mov ecx, dword [esp + 0x58]
nop dword [eax]
cmp dword [edi], ecx
je 0x48594b
mov edi, dword [edi + 0x18]
test edi, edi
jne 0x485940
mov ecx, dword [esp + 0xc]
mov edx, eax
call fcn.004a3a70
mov ecx, dword [esp + 8]
mov esi, dword [esp + 0x10]
movsx eax, word [ecx + 0x2a]
mov ecx, dword [esp + 0x18]
add eax, 2
mov dword [esp + 0xc0], eax
mov edx, dword [ecx]
cmp dword [esi], edx
mov esi, dword [esp + 0x40]
mov dword [esp + 0x90], edx
jg 0x48599b
push dword [esp + 0x68]
mov edx, 0xa
mov ecx, esi
push eax
push 1
call fcn.0044d060
add esp, 0xc
mov edx, eax
jmp 0x4859d7
lea eax, [edx + 1]
mov dword [ecx], eax
lea ecx, [edx + edx*4]
mov eax, dword [esi + 0x68]
mov edx, dword [esp + 0xc0]
mov dword [eax + ecx*4 + 8], edx
mov edx, dword [esp + 0x68]
mov dword [eax + ecx*4 + 0xc], edx
mov edx, dword [esp + 0x90]
mov dword [eax + ecx*4], 0xa
mov dword [eax + ecx*4 + 4], 1
mov dword [eax + ecx*4 + 0x10], 0
push 0xfffffffffffffff4
push edi
mov ecx, esi
call fcn.0044dad0
mov eax, dword [esp + 0x20]
add esp, 8
mov eax, dword [eax]
test eax, eax
jle 0x485a0a
mov ecx, dword [ebp + 0x10]
mov edi, 2
movzx edx, cx
cmp ecx, 0xb
lea ecx, [eax + eax*4]
mov eax, dword [esi + 0x68]
cmove edx, edi
mov word [eax + ecx*4 - 0x12], dx
mov edi, dword [esp + 0xc]
mov ecx, edi
mov eax, dword [edi + 0x74]
test eax, eax
cmovne ecx, eax
mov byte [ecx + 0x15], 1
jmp 0x485b03
push dword [esp + 0x9c]
mov edi, dword [esp + 0x10]
lea eax, [esp + 0xc4]
push 0
push eax
push dword [esp + 0x60]
mov eax, dword [esp + 0x74]
mov ecx, edi
push dword [ebp + 0x10]
mov edx, dword [esp + 0x1c]
shr eax, 0x1f
xor al, 1
movzx eax, al
push eax
push 0
push dword [esp + 0x84]
push dword [esp + 0xa8]
push dword [esp + 0x70]
push dword [esp + 0xac]
call fcn.00485ee0
mov edx, dword [esp + 0x34]
add esp, 0x2c
mov ecx, edi
push 0
push 0
push dword [esp + 0x70]
push 0
call fcn.00482460
add esp, 0x10
cmp dword [esp + 0xc0], 0
je 0x485acd
cmp dword [esp + 0x6c], 0
jne 0x485ac9
mov eax, dword [esp + 0x58]
mov eax, dword [eax + 0x20]
and eax, 0x4000
or eax, 0
je 0x485acd
mov eax, dword [esp + 8]
push 0
mov ecx, dword [eax + 0x48]
mov edx, dword [eax]
add ecx, 0x38
call fcn.00431190
add esp, 4
cmp dword [eax + 8], 0
je 0x485acd
xor eax, eax
jmp 0x485ad2
mov eax, 1
mov edx, dword [esp + 8]
mov ecx, edi
push eax
push dword [esp + 0x48]
push 0
push dword [esp + 0x90]
push dword [esp + 0x78]
push dword [esp + 0x9c]
push dword [esp + 0x64]
call fcn.00487670
add esp, 0x1c
jmp 0x485b03
mov edi, dword [esp + 0xc]
mov edx, dword [esp + 0x98]
test edx, edx
je 0x485b5f
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x485b2c
push 0
push 1
push edx
mov edx, 0x53
mov ecx, esi
call fcn.0044d060
add esp, 0xc
jmp 0x485b5f
mov edi, dword [esp + 0xc]
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 0x485b97
mov ecx, dword [esp + 8]
push dword [esp + 0x54]
mov edx, dword [esp + 0x84]
push dword [ebp + 0x10]
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 0x78
mov ecx, edi
call fcn.0049e820
add esp, 0x1c
mov ecx, dword [esi + 0xc]
mov edx, dword [esp + 0x54]
not edx
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x485bb5
push edx
mov edx, esi
call fcn.0044d4c0
add esp, 4
jmp 0x485bbe
mov ecx, dword [ecx + 0x40]
mov eax, dword [esi + 0x6c]
mov dword [ecx + edx*4], eax
cmp byte [esp + 0x17], 0
je 0x485ca5
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x485bed
mov edx, dword [esp + 0x70]
mov ecx, esi
push 0
push edx
push dword [esp + 0x30]
mov edx, 5
call fcn.0044d060
add esp, 0xc
jmp 0x485c20
mov edx, dword [esp + 0x28]
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 + 0x70]
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 + 0x74]
mov edx, dword [esi + 0x6c]
test ecx, ecx
jns 0x485c2e
lea ecx, [edx - 1]
mov eax, dword [esi]
cmp byte [eax + 0x51], 0
je 0x485c3d
mov eax, 0x55011c
jmp 0x485c46
mov eax, dword [esi + 0x68]
lea ecx, [ecx + ecx*4]
lea eax, [eax + ecx*4]
mov dword [eax + 8], edx
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x485c6d
push 0
push 0
push dword [esp + 0x30]
mov edx, 0x75
mov ecx, esi
call fcn.0044d060
add esp, 0xc
jmp 0x485d2a
mov edx, dword [esp + 0x28]
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 0x485d2a
cmp dword [esp + 0x48], 0
je 0x485d2a
mov ecx, dword [esi + 0x6c]
mov edx, dword [esp + 0x70]
cmp dword [esi + 0x70], ecx
jg 0x485cd2
push 0
push edx
push 0
mov edx, 0xb
mov ecx, esi
call fcn.0044d060
add esp, 0xc
jmp 0x485d01
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0xb
mov dword [eax + ecx*4 + 4], 0
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 + 0x74]
mov edx, dword [esi + 0x6c]
test ecx, ecx
jns 0x485d0f
lea ecx, [edx - 1]
mov eax, dword [esi]
cmp byte [eax + 0x51], 0
je 0x485d1e
mov eax, 0x55011c
jmp 0x485d27
mov eax, dword [esi + 0x68]
lea ecx, [ecx + ecx*4]
lea eax, [eax + ecx*4]
mov dword [eax + 8], edx
cmp byte [edi + 0x12], 0
jne 0x485d43
cmp dword [edi + 0x78], 0
jne 0x485d43
cmp dword [edi + 0x70], 0
je 0x485d43
mov ecx, edi
call fcn.00483c70
mov edx, dword [esp + 0x98]
test edx, edx
je 0x485dc9
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x485d70
push 0
push 1
push edx
mov edx, 0x51
mov ecx, esi
call fcn.0044d060
add esp, 0xc
jmp 0x485d9f
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.0044ec90
mov eax, dword [esi]
cmp byte [eax + 0x51], 0
jne 0x485dc9
mov ecx, dword [esi + 0x74]
mov edx, str.rows_inserted
push 0
push 1
push 0xffffffffffffffff
call fcn.0044c280
add esp, 0xc
mov edi, dword [esp + 0x58]
mov ecx, edi
mov edx, dword [esp + 0x78]
call fcn.004798a0
mov eax, dword [esp + 0x50]
test eax, eax
je 0x485de9
mov edx, eax
mov ecx, edi
call fcn.00465470
mov edx, dword [esp + 0x9c]
mov ecx, edi
call fcn.004a0f20
mov eax, dword [esp + 0x48]
test eax, eax
je 0x485e0d
push 1
mov edx, eax
mov ecx, edi
call fcn.004902f0
add esp, 4
mov edx, dword [esp + 0x34]
mov ecx, edi
call fcn.00479330
mov ecx, dword [esp + 0x84]
test ecx, ecx
je 0x485e88
test edi, edi
je 0x485e7f
cmp dword [edi + 0x1e8], 0
je 0x485e4d
mov edx, ecx
mov ecx, edi
call fcn.0042c6f0
pop edi
pop esi
mov ecx, dword [esp + 0xd4]
xor ecx, esp
call fcn.004ddc19
mov esp, ebp
pop ebp
ret
cmp ecx, dword [edi + 0x138]
jb 0x485e7f
cmp ecx, dword [edi + 0x13c]
jae 0x485e7f
mov eax, dword [edi + 0x134]
mov dword [ecx], eax
mov dword [edi + 0x134], ecx
pop edi
pop esi
mov ecx, dword [esp + 0xd4]
xor ecx, esp
call fcn.004ddc19
mov esp, ebp
pop ebp
ret
push ecx
call fcn.0042c680
add esp, 4
mov ecx, dword [esp + 0xdc]
pop edi
pop esi
xor ecx, esp
call fcn.004ddc19
mov esp, ebp
pop ebp
ret