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

Disassembly:
sub esp, 0x98
mov ecx, dword [esp + 0x9c]
mov eax, dword [ecx]
push ebx
xor ebx, ebx
mov dword [esp + 0x30], eax
xor eax, eax
push esi
push edi
mov dword [esp + 0x18], ebx
mov dword [esp + 0x44], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x48], 0xffffffff
mov dword [esp + 0x40], ebx
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x58], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x70], ebx
mov dword [esp + 0x54], ebx
mov dword [esp + 0x68], ebx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x6c], ebx
mov dword [esp + 0x74], eax
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], eax
cmp dword [ecx + 0x44], ebx
jne 0x5bff3f
mov ecx, dword [esp + 0x38]
cmp byte [ecx + 0x40], bl
jne 0x5bff3f
mov edx, dword [esp + 0xac]
cmp dword [edx + 0x10], ebx
je 0x5bff3f
mov ebx, dword [esp + 0xa8]
push ebp
mov eax, edx
call fcn.005b1280
mov edi, eax
mov dword [esp + 0x10], edi
test edi, edi
je 0x5bff3c
mov ebx, dword [esp + 0x3c]
mov esi, dword [edi + 0x44]
mov ecx, ebx
call fcn.005663f0
mov ecx, dword [ebx + 0x10]
mov edx, dword [edi]
mov esi, eax
shl eax, 4
mov eax, dword [eax + ecx]
push eax
mov eax, dword [esp + 0xb0]
push 0
push edx
push 0x12
call fcn.005773f0
add esp, 0x10
test eax, eax
jne 0x5bff3c
movzx eax, byte [edi + 0x2c]
mov ebx, dword [esp + 0xac]
shr eax, 5
and eax, 1
mov dword [esp + 0x50], eax
lea eax, [esp + 0x28]
push eax
push 0
push 0x6a
mov edx, edi
mov eax, ebx
call fcn.00566b80
xor ecx, ecx
cmp dword [edi + 0xc], ecx
mov dword [esp + 0x6c], eax
setne cl
push edi
mov eax, ebx
mov dword [esp + 0x64], ecx
call fcn.00593dc0
add esp, 0x10
test eax, eax
jne 0x5bff3c
mov edx, dword [esp + 0x28]
push edx
mov ecx, edi
mov eax, ebx
call fcn.00578a60
add esp, 4
test eax, eax
jne 0x5bff3c
mov edi, ebx
call fcn.0057a370
mov ebp, eax
test ebp, ebp
je 0x5bff3c
cmp byte [edi + 0x12], 0
jne 0x5beeae
or dword [ebp + 0x64], 0x10
cmp dword [esp + 0xb8], 0
jne 0x5beec3
cmp dword [esp + 0x60], 0
jne 0x5beec3
xor eax, eax
jmp 0x5beec8
mov eax, 1
push eax
mov ecx, esi
mov eax, edi
call fcn.005a5880
mov ebx, dword [esp + 0x14]
add esp, 4
cmp dword [esp + 0xbc], 0
jne 0x5bef05
mov eax, dword [esp + 0xc0]
push esi
push eax
mov eax, dword [esp + 0xc0]
push ebx
push edi
call fcn.005b18b0
add esp, 0x10
test eax, eax
jne 0x5bfe31
push esi
mov edx, edi
call fcn.005705c0
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0xbc]
add esp, 4
test eax, eax
je 0x5bf053
lea ecx, [esp + 0x78]
push ecx
push eax
push edi
call fcn.005b9610
add esp, 0xc
test eax, eax
jne 0x5bff3c
mov edx, dword [esp + 0x7c]
mov eax, dword [esp + 0x80]
mov ecx, dword [esp + 0xb8]
inc edx
cmp dword [esp + 0x60], 0
mov dword [esp + 0x34], edx
mov edx, dword [ecx]
mov dword [esp + 0x58], eax
mov eax, dword [edx]
mov dword [esp + 0x40], eax
jne 0x5bef7f
mov eax, dword [esp + 0xac]
push ebx
push esi
xor edi, edi
call fcn.00582df0
add esp, 8
test eax, eax
je 0x5bf0ef
mov edi, dword [esp + 0xac]
mov esi, dword [edi + 0x48]
lea ecx, [esi + 1]
mov eax, edi
mov dword [esp + 0x44], 1
mov dword [esp + 0x30], esi
mov dword [edi + 0x48], ecx
call fcn.00564b90
mov ebx, eax
mov eax, edi
call fcn.00564b90
mov edx, dword [esp + 0x40]
push edx
mov dword [esp + 0x30], eax
push esi
push 0x35
mov eax, ebp
call fcn.0056cfb0
mov eax, dword [esp + 0x88]
push eax
push 0x14
mov eax, ebp
call fcn.0056cf60
mov ecx, dword [esp + 0x48]
push ecx
mov dword [esp + 0x50], eax
push 0x29
mov eax, ebp
call fcn.0056cf60
mov edx, dword [esp + 0x5c]
push ebx
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x78]
push edx
push eax
push 0x2d
mov eax, ebp
call fcn.0056ceb0
mov ecx, dword [esp + 0x58]
push ecx
push esi
push 0x43
mov eax, ebp
call fcn.0056cfb0
mov edx, dword [esp + 0x64]
push edx
push ebx
push esi
push 0x44
mov eax, ebp
call fcn.0056ceb0
mov eax, dword [esp + 0x80]
add esp, 0x48
push eax
push 0
push 0x10
mov eax, ebp
call fcn.0056cfb0
mov eax, dword [esp + 0x20]
add esp, 0xc
mov edx, ebp
call fcn.00562ed0
mov esi, ebx
mov edx, edi
call fcn.00564bb0
mov esi, dword [esp + 0x2c]
call fcn.00564bb0
jmp 0x5bf0ef
xor eax, eax
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], eax
mov dword [esp + 0x98], eax
mov dword [esp + 0x9c], eax
mov dword [esp + 0xa0], eax
mov dword [esp + 0xa4], eax
mov eax, dword [esp + 0xb4]
mov dword [esp + 0x88], edi
mov dword [esp + 0x30], 0xffffffff
test eax, eax
je 0x5bf0ab
mov eax, dword [eax]
jmp 0x5bf0ad
xor eax, eax
xor edi, edi
mov dword [esp + 0x40], eax
test eax, eax
jle 0x5bf0ef
xor ebx, ebx
lea esp, [esp]
mov ecx, dword [esp + 0xb4]
mov edx, dword [ecx + 8]
mov eax, dword [ebx + edx]
push eax
lea esi, [esp + 0x8c]
call fcn.00589160
add esp, 4
test eax, eax
jne 0x5bff3c
inc edi
add ebx, 0x18
cmp edi, dword [esp + 0x40]
jl 0x5bf0c0
mov edi, dword [esp + 0x10]
test byte [edi + 0x2c], 0x10
je 0x5bf124
movsx ecx, word [edi + 0x26]
test ecx, ecx
jle 0x5bf124
mov eax, dword [edi + 4]
mov edx, dword [esp + 0x1c]
add eax, 0x17
jmp 0x5bf110
movzx esi, byte [eax]
shr esi, 1
and esi, 1
add edx, esi
add eax, 0x18
sub ecx, 1
jne 0x5bf110
jmp 0x5bf128
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0xbc]
test ecx, ecx
jne 0x5bf172
mov ecx, dword [esp + 0x40]
test ecx, ecx
je 0x5bf2d9
movsx eax, word [edi + 0x26]
sub eax, edx
cmp ecx, eax
je 0x5bf2cd
mov edi, dword [esp + 0xac]
push ecx
mov ecx, dword [esp + 0xb4]
push eax
push 0
push ecx
push str.table__S_has__d_columns_but__d_values_were_supplied
call fcn.00573960
add esp, 0x14
jmp 0x5bff3c
mov edx, dword [ecx + 4]
mov eax, dword [esp + 0x40]
cmp eax, edx
je 0x5bf198
mov edi, dword [esp + 0xac]
push edx
push eax
push str._d_values_for__d_columns
call fcn.00573960
add esp, 0xc
jmp 0x5bff3c
xor eax, eax
test edx, edx
jle 0x5bf1ad
or edx, 0xffffffff
mov esi, dword [ecx]
mov dword [esi + eax*8 + 4], edx
inc eax
cmp eax, dword [ecx + 4]
jl 0x5bf1a1
cmp dword [ecx + 4], 0
mov dword [esp + 0x18], 0
jle 0x5bf2d9
nop
movsx edi, word [edi + 0x26]
xor esi, esi
test edi, edi
jle 0x5bf20c
mov edx, dword [esp + 0xbc]
mov eax, dword [edx]
mov ecx, dword [esp + 0x18]
mov edx, dword [eax + ecx*8]
lea eax, [eax + ecx*8]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x10]
mov ebx, dword [eax + 4]
mov dword [esp + 0x2c], edx
lea esp, [esp]
mov ecx, dword [ebx]
mov edx, dword [esp + 0x2c]
push ecx
push edx
call fcn.0055dac0
add esp, 8
test eax, eax
je 0x5bf27c
inc esi
add ebx, 0x18
cmp esi, edi
jl 0x5bf1f0
mov edi, dword [esp + 0x18]
mov eax, dword [esp + 0x10]
movsx ecx, word [eax + 0x26]
cmp esi, ecx
mov ebx, dword [esp + 0xbc]
jl 0x5bf269
mov edx, dword [ebx]
mov esi, dword [edx + edi*8]
push str._ROWID_
push esi
call fcn.0055dac0
add esp, 8
test eax, eax
je 0x5bf25e
push str.ROWID
push esi
call fcn.0055dac0
add esp, 8
test eax, eax
je 0x5bf25e
push 0x65ede0
push esi
call fcn.0055dac0
add esp, 8
test eax, eax
jne 0x5bf2a0
cmp dword [esp + 0x50], 0
jne 0x5bf2a0
mov dword [esp + 0x4c], edi
inc edi
cmp edi, dword [ebx + 4]
mov dword [esp + 0x18], edi
jge 0x5bf2d9
mov edi, dword [esp + 0x10]
jmp 0x5bf1c0
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x10]
mov edi, dword [esp + 0x18]
mov dword [eax + 4], esi
movsx edx, word [ecx + 0x24]
cmp esi, edx
jne 0x5bf210
mov dword [esp + 0x4c], edi
jmp 0x5bf210
mov eax, dword [ebx]
mov ecx, dword [eax + edi*8]
mov edx, dword [esp + 0xb0]
mov edi, dword [esp + 0xac]
push ecx
push 0
push edx
push str.table__S_has_no_column_named__s
call fcn.00573960
add esp, 0x10
mov byte [edi + 0x11], 1
jmp 0x5bff3c
test ecx, ecx
jle 0x5bf2d9
movsx eax, word [edi + 0x24]
mov dword [esp + 0x4c], eax
mov ecx, dword [esp + 0x3c]
test byte [ecx + 0x18], 0x80
mov ebx, dword [esp + 0xac]
je 0x5bf303
inc dword [ebx + 0x4c]
mov eax, dword [ebx + 0x4c]
push eax
mov dword [esp + 0x70], eax
push 0
push 0x17
mov eax, ebp
call fcn.0056cfb0
add esp, 0xc
cmp dword [esp + 0x54], 0
jne 0x5bf360
mov ecx, dword [esp + 0x10]
lea edx, [esp + 0x64]
push edx
lea eax, [esp + 0x4c]
push eax
push 0
push 0xffffffffffffffff
push 0x33
push ecx
push ebx
call fcn.00594b90
mov esi, dword [esp + 0x58]
mov edi, eax
add esp, 0x1c
lea ecx, [edi*4 + 4]
call fcn.00569810
mov dword [esp + 0x70], eax
test eax, eax
je 0x5bff3c
xor ecx, ecx
test edi, edi
jle 0x5bf360
mov esi, 1
add dword [ebx + 0x4c], esi
mov edx, dword [ebx + 0x4c]
mov dword [eax + ecx*4], edx
add ecx, esi
cmp ecx, edi
jl 0x5bf351
cmp dword [esp + 0x44], 0
je 0x5bf385
mov edx, dword [esp + 0x30]
push edx
push 0x67
mov eax, ebp
call fcn.0056cf60
mov dword [esp + 0x64], eax
mov eax, dword [ebp + 0x1c]
add esp, 8
mov dword [esp + 0x68], eax
jmp 0x5bf3b6
cmp dword [esp + 0xb8], 0
je 0x5bf3b6
mov ecx, dword [esp + 0x7c]
push ecx
push 0x14
mov eax, ebp
call fcn.0056cf60
mov edx, dword [esp + 0x3c]
push edx
mov dword [esp + 0x74], eax
push 0x29
mov eax, ebp
call fcn.0056cf60
add esp, 0x10
mov dword [esp + 0x5c], eax
mov edi, dword [esp + 0x10]
mov eax, dword [ebx + 0x4c]
movsx edx, word [edi + 0x26]
lea ecx, [eax + 1]
lea eax, [edx + eax + 1]
mov dword [ebx + 0x4c], eax
test byte [edi + 0x2c], 0x10
mov dword [esp + 0x38], ecx
mov dword [esp + 0x1c], ecx
je 0x5bf3e2
inc ecx
inc eax
mov dword [esp + 0x1c], ecx
mov dword [ebx + 0x4c], eax
inc ecx
mov eax, ebp
mov dword [esp + 0x34], ecx
call fcn.0056d000
test byte [esp + 0x28], 1
mov dword [esp + 0x2c], eax
je 0x5bf692
movsx eax, word [edi + 0x26]
mov ecx, dword [ebx + 0x3c]
mov esi, dword [ebx + 0x40]
inc eax
cmp eax, ecx
mov dword [esp + 0x14], esi
jg 0x5bf41d
lea edx, [esi + eax]
sub ecx, eax
mov dword [ebx + 0x40], edx
mov dword [ebx + 0x3c], ecx
jmp 0x5bf42c
mov ecx, dword [ebx + 0x4c]
lea esi, [ecx + 1]
add ecx, eax
mov dword [esp + 0x14], esi
mov dword [ebx + 0x4c], ecx
mov eax, dword [esp + 0x4c]
push esi
test eax, eax
jge 0x5bf445
push 0xffffffffffffffff
push 0x17
mov eax, ebp
call fcn.0056cfb0
add esp, 0xc
jmp 0x5bf4bb
cmp dword [esp + 0x48], 0
je 0x5bf460
push eax
mov eax, dword [esp + 0x38]
push eax
push 0x2b
mov eax, ebp
call fcn.0056ceb0
add esp, 0x10
jmp 0x5bf47a
mov edx, dword [esp + 0xb8]
lea ecx, [eax + eax*2]
mov eax, dword [edx + 8]
mov ecx, dword [eax + ecx*8]
push ecx
push ebx
call fcn.005bbe20
add esp, 0xc
push esi
push 0x4b
mov eax, ebp
call fcn.0056cf60
push esi
mov edi, eax
push 0xffffffffffffffff
push 0x17
mov eax, ebp
call fcn.0056cfb0
add esp, 0x14
test edi, edi
jl 0x5bf4aa
mov eax, dword [ebp + 0x1c]
cmp eax, edi
jbe 0x5bf4aa
mov ecx, dword [ebp + 4]
lea edx, [edi + edi*4]
mov dword [ecx + edx*4 + 8], eax
push esi
push 0x23
mov eax, ebp
call fcn.0056cf60
mov edi, dword [esp + 0x18]
add esp, 8
xor edx, edx
cmp dx, word [edi + 0x26]
mov dword [esp + 0x18], 0
jge 0x5bf61c
mov dword [esp + 0x28], edx
mov edx, dword [esp + 0xbc]
test edx, edx
jne 0x5bf4e4
mov esi, dword [esp + 0x18]
jmp 0x5bf502
mov ecx, dword [edx + 4]
xor esi, esi
test ecx, ecx
jle 0x5bf502
mov eax, dword [edx]
add eax, 4
mov edi, dword [eax]
cmp edi, dword [esp + 0x18]
je 0x5bf502
inc esi
add eax, 8
cmp esi, ecx
jl 0x5bf4f2
mov eax, dword [esp + 0x44]
test eax, eax
jne 0x5bf513
cmp dword [esp + 0xb4], eax
je 0x5bf51c
test edx, edx
je 0x5bf547
cmp esi, dword [edx + 4]
jl 0x5bf547
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
lea edx, [eax + ecx + 1]
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 4]
push edx
mov edx, dword [esp + 0x2c]
mov eax, dword [ecx + edx + 4]
push eax
push ebx
call fcn.005bbe20
add esp, 0xc
jmp 0x5bf5fe
test eax, eax
je 0x5bf5a3
mov eax, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], eax
mov dword [esp + 0x20], eax
jg 0x5bf56a
mov edi, ebp
call fcn.0056ce30
test eax, eax
jne 0x5bf5fe
mov eax, dword [esp + 0x20]
mov edx, dword [ebp + 4]
inc dword [ebp + 0x1c]
lea ecx, [eax + eax*4]
lea eax, [edx + ecx*4]
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x14]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x18]
lea edx, [edx + ecx + 1]
mov byte [eax], 0x2b
mov byte [eax + 3], 0
mov dword [eax + 8], esi
mov dword [eax + 0xc], edx
mov dword [eax + 0x10], 0
mov byte [eax + 1], 0
jmp 0x5bf5fe
mov ecx, dword [esp + 0xb4]
mov edx, dword [ecx + 8]
mov ecx, dword [esp + 0x14]
lea eax, [esi + esi*2]
mov esi, dword [edx + eax*8]
mov eax, dword [ebx + 8]
mov edx, dword [esp + 0x18]
mov dword [esp + 0x20], eax
lea eax, [ecx + edx + 1]
push eax
push esi
push ebx
call fcn.005bbe20
add esp, 0xc
cmp byte [esi], 0x85
je 0x5bf5fe
inc dword [ebx + 0x4c]
mov edi, dword [ebx + 0x4c]
push edi
push eax
mov eax, dword [esp + 0x28]
push 0x1e
call fcn.0056cfb0
mov cl, byte [esi]
add esp, 0xc
and dword [esi + 4], 0xffffefff
mov byte [esi + 0x26], cl
mov byte [esi], 0x85
mov dword [esi + 0x1c], edi
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x18]
movsx ecx, word [edx + 0x26]
add dword [esp + 0x28], 0x18
inc eax
cmp eax, ecx
mov dword [esp + 0x18], eax
jl 0x5bf4d3
cmp dword [esp + 0x54], 0
mov edi, dword [esp + 0x10]
mov esi, dword [esp + 0x14]
jne 0x5bf648
movsx edx, word [edi + 0x26]
push edx
lea eax, [esi + 1]
push eax
push 0x2c
mov eax, ebp
call fcn.0056cfb0
push ebp
mov eax, edi
call fcn.005704f0
add esp, 0x10
mov ecx, dword [esp + 0x2c]
movsx eax, word [edi + 0x26]
mov edx, dword [esp + 0xc0]
push ecx
push edx
mov edx, dword [esp + 0x68]
mov ecx, esi
sub ecx, eax
dec ecx
push ecx
push edi
push 1
push 0
push 0x6a
push edx
push ebx
call fcn.005c06f0
movsx edi, word [edi + 0x26]
inc edi
push esi
mov eax, edi
mov esi, ebx
call fcn.00564940
add esp, 0x28
cmp edi, dword [ebx + 0x3c]
jle 0x5bf692
mov eax, dword [esp + 0x14]
mov dword [ebx + 0x3c], edi
mov dword [ebx + 0x40], eax
cmp dword [esp + 0x54], 0
jne 0x5bfc11
mov edi, dword [esp + 0x10]
test byte [edi + 0x2c], 0x10
je 0x5bf6ba
mov ecx, dword [esp + 0x38]
push ecx
push 0
push 0x1a
mov eax, ebp
call fcn.0056cfb0
add esp, 0xc
mov esi, dword [esp + 0x4c]
test esi, esi
jl 0x5bf7f1
cmp dword [esp + 0x44], 0
mov edi, dword [esp + 0x1c]
push edi
je 0x5bf737
mov edx, dword [esp + 0x34]
push esi
push edx
push 0x2b
mov eax, ebp
call fcn.0056ceb0
add esp, 0x10
mov eax, dword [esp + 0x10]
test byte [eax + 0x2c], 0x10
jne 0x5bf7ca
push edi
push 0x4b
mov eax, ebp
call fcn.0056cf60
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x50]
push ecx
push edi
push edx
mov esi, eax
push 0x43
mov eax, ebp
call fcn.0056ceb0
add esp, 0x18
test esi, esi
jl 0x5bf7de
mov eax, dword [ebp + 0x1c]
cmp eax, esi
jbe 0x5bf7de
mov edx, dword [ebp + 4]
lea ecx, [esi + esi*4]
mov dword [edx + ecx*4 + 8], eax
jmp 0x5bf7de
cmp dword [esp + 0xbc], 0
je 0x5bf756
mov eax, dword [esp + 0x5c]
add eax, esi
push eax
push 0x1f
mov eax, ebp
call fcn.0056cfb0
add esp, 0xc
jmp 0x5bf6e4
mov edx, dword [esp + 0xb8]
mov eax, dword [edx + 8]
lea ecx, [esi + esi*2]
mov ecx, dword [eax + ecx*8]
push ecx
push ebx
call fcn.005bbe20
mov eax, dword [ebp + 0x1c]
mov edx, dword [ebp]
add esp, 0xc
dec eax
cmp byte [edx + 0x40], 0
je 0x5bf784
mov eax, 0x760ee0
jmp 0x5bf795
mov ecx, dword [ebp + 4]
lea eax, [eax + eax*4]
lea eax, [ecx + eax*4]
test eax, eax
je 0x5bf6e4
cmp byte [eax], 0x1a
jne 0x5bf6e4
mov edx, dword [esp + 0x10]
test byte [edx + 0x2c], 0x10
jne 0x5bf6e4
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x24]
mov dword [esp + 0x74], 1
mov byte [eax], 0x43
mov dword [eax + 4], ecx
mov dword [eax + 8], edi
mov dword [eax + 0xc], edx
jmp 0x5bf836
mov eax, dword [ebp + 0x1c]
add eax, 2
push eax
push edi
push 0x4a
mov eax, ebp
call fcn.0056cfb0
add esp, 0xc
push edi
push 0x23
mov eax, ebp
call fcn.0056cf60
mov esi, dword [esp + 0x54]
add esp, 8
jmp 0x5bf836
test byte [edi + 0x2c], 0x10
jne 0x5bf823
cmp dword [esp + 0x50], 0
jne 0x5bf823
mov ecx, dword [esp + 0x24]
mov edi, dword [esp + 0x1c]
mov edx, dword [esp + 0x48]
push ecx
push edi
push edx
push 0x43
mov eax, ebp
call fcn.0056ceb0
add esp, 0x10
mov dword [esp + 0x74], 1
jmp 0x5bf836
mov edi, dword [esp + 0x1c]
push edi
push 0
push 0x1a
mov eax, ebp
call fcn.0056cfb0
add esp, 0xc
cmp dword [esp + 0x24], 0
jle 0x5bf850
mov eax, dword [esp + 0x24]
push edi
push eax
mov eax, dword [ebx + 8]
push 0x7f
call fcn.0056cfb0
add esp, 0xc
mov edx, dword [esp + 0x10]
xor eax, eax
xor ecx, ecx
cmp cx, word [edx + 0x26]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], eax
jge 0x5bfa74
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x14], eax
jmp 0x5bf880
mov ecx, dword [esp + 0x10]
movsx edx, word [ecx + 0x24]
mov edi, dword [esp + 0x18]
cmp edi, edx
jne 0x5bf8c3
mov esi, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], esi
jg 0x5bf8a7
mov edi, ebp
call fcn.0056ce30
test eax, eax
jne 0x5bfa4e
mov ecx, dword [ebp + 4]
inc dword [ebp + 0x1c]
lea eax, [esi + esi*4]
lea eax, [ecx + eax*4]
xor ecx, ecx
mov byte [eax], 0x1a
mov dword [eax + 4], ecx
mov byte [eax + 1], cl
jmp 0x5bfa3d
mov esi, dword [esp + 0xbc]
test esi, esi
jne 0x5bf954
mov eax, dword [ecx + 4]
mov edx, dword [esp + 0x24]
test byte [eax + edx + 0x17], 2
je 0x5bf94c
inc dword [esp + 0x1c]
mov eax, dword [ecx + 4]
mov ecx, dword [esp + 0x24]
mov eax, dword [eax + ecx + 4]
test eax, eax
je 0x5bf9f3
cmp byte [eax], 0x85
jne 0x5bf9f3
mov edi, dword [ebx + 8]
mov esi, dword [edi + 0x1c]
cmp dword [edi + 0x20], esi
mov edx, dword [eax + 0x1c]
mov dword [esp + 0x20], edx
jg 0x5bf91f
call fcn.0056ce30
test eax, eax
jne 0x5bfa4e
mov ecx, dword [edi + 4]
inc dword [edi + 0x1c]
mov edx, dword [esp + 0x20]
lea eax, [esi + esi*4]
lea eax, [ecx + eax*4]
mov ecx, dword [esp + 0x14]
mov dword [eax + 8], ecx
xor ecx, ecx
mov byte [eax], 0x1e
mov dword [eax + 4], edx
mov dword [eax + 0xc], ecx
mov dword [eax + 0x10], ecx
mov byte [eax + 1], cl
jmp 0x5bfa4a
mov eax, edi
sub eax, dword [esp + 0x1c]
jmp 0x5bf972
mov edx, dword [esi + 4]
xor eax, eax
test edx, edx
jle 0x5bf97a
mov ecx, dword [esi]
add ecx, 4
cmp dword [ecx], edi
je 0x5bf96e
inc eax
add ecx, 8
cmp eax, edx
jl 0x5bf962
mov ecx, dword [esp + 0x10]
test eax, eax
jl 0x5bf8e4
cmp dword [esp + 0x40], 0
je 0x5bf8e4
test esi, esi
je 0x5bf992
cmp eax, dword [esi + 4]
jge 0x5bf8e4
cmp dword [esp + 0x44], 0
mov ecx, dword [esp + 0x14]
push ecx
je 0x5bf9b5
mov edx, dword [esp + 0x34]
push eax
push edx
push 0x2b
mov eax, ebp
call fcn.0056ceb0
add esp, 0x10
jmp 0x5bfa4e
cmp dword [esp + 0xbc], 0
je 0x5bf9d7
mov edx, dword [esp + 0x5c]
add eax, edx
push eax
push 0x1f
mov eax, ebp
call fcn.0056cfb0
add esp, 0xc
jmp 0x5bfa4e
lea edx, [eax + eax*2]
mov eax, dword [esp + 0xb8]
mov ecx, dword [eax + 8]
mov edx, dword [ecx + edx*8]
push edx
push ebx
call fcn.005bbe20
add esp, 0xc
jmp 0x5bfa4e
mov esi, dword [esp + 0x14]
push esi
push eax
push ebx
call fcn.005baf90
add esp, 0xc
mov dword [esp + 0x20], eax
cmp eax, esi
je 0x5bfa4e
mov edi, dword [ebx + 8]
test edi, edi
je 0x5bfa4e
mov esi, dword [edi + 0x1c]
cmp dword [edi + 0x20], esi
jg 0x5bfa22
call fcn.0056ce30
test eax, eax
jne 0x5bfa4e
mov eax, dword [edi + 4]
inc dword [edi + 0x1c]
mov ecx, dword [esp + 0x20]
lea edx, [esi + esi*4]
lea eax, [eax + edx*4]
mov dword [eax + 4], ecx
xor ecx, ecx
mov byte [eax], 0x1f
mov byte [eax + 1], cl
mov edx, dword [esp + 0x14]
mov dword [eax + 0x10], ecx
mov dword [eax + 0xc], ecx
mov dword [eax + 8], edx
mov byte [eax + 3], 0
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x18]
movsx edx, word [ecx + 0x26]
inc dword [esp + 0x14]
add dword [esp + 0x24], 0x18
inc eax
cmp eax, edx
mov dword [esp + 0x18], eax
jl 0x5bf880
mov esi, dword [esp + 0x4c]
mov eax, dword [esp + 0x10]
test byte [eax + 0x2c], 0x10
je 0x5bfb8b
mov eax, dword [eax + 0x3c]
mov dword [esp + 0x28], eax
test eax, eax
je 0x5bfaa0
mov ecx, dword [esp + 0x3c]
cmp dword [eax], ecx
je 0x5bfa9c
mov eax, dword [eax + 0x18]
test eax, eax
jne 0x5bfa91
mov dword [esp + 0x28], eax
mov esi, dword [esp + 0x10]
push esi
mov eax, ebx
call fcn.00570db0
movsx ecx, word [esi + 0x26]
mov esi, dword [ebp + 0x1c]
add ecx, 2
add esp, 4
cmp dword [ebp + 0x20], esi
mov dword [esp + 0x20], ecx
jg 0x5bfad8
mov edi, ebp
call fcn.0056ce30
test eax, eax
je 0x5bfad4
mov esi, 1
jmp 0x5bfb08
mov ecx, dword [esp + 0x20]
mov edi, dword [ebp + 4]
mov edx, 1
add dword [ebp + 0x1c], edx
lea eax, [esi + esi*4]
lea eax, [edi + eax*4]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x38]
mov byte [eax], 0xf
mov byte [eax + 3], 0
mov dword [eax + 4], edx
mov dword [eax + 0xc], ecx
mov dword [eax + 0x10], 0
mov byte [eax + 1], 0
mov ecx, dword [ebp + 4]
mov edi, dword [ebp]
mov eax, esi
test ecx, ecx
je 0x5bfb54
cmp byte [edi + 0x40], 0
jne 0x5bfb54
test esi, esi
jge 0x5bfb22
mov eax, dword [ebp + 0x1c]
dec eax
lea edx, [eax + eax*4]
movsx eax, byte [ecx + edx*4 + 1]
lea esi, [ecx + edx*4]
mov ecx, dword [esi + 0x10]
call fcn.0056d100
mov eax, dword [esp + 0x28]
xor ecx, ecx
mov dword [esi + 0x10], ecx
cmp eax, ecx
jne 0x5bfb4a
mov dword [esi + 0x10], ecx
mov byte [esi + 1], cl
jmp 0x5bfb54
mov dword [esi + 0x10], eax
mov byte [esi + 1], 0xf6
inc dword [eax + 0xc]
mov edx, dword [esp + 0xc0]
cmp edx, 0xa
jne 0x5bfb65
mov edx, 2
mov ecx, dword [ebp + 4]
test ecx, ecx
je 0x5bfb76
mov eax, dword [ebp + 0x1c]
lea eax, [eax + eax*4]
mov byte [ecx + eax*4 - 0x11], dl
mov eax, dword [ebx + 0x1b8]
test eax, eax
jne 0x5bfb82
mov eax, ebx
mov byte [eax + 0x18], 1
jmp 0x5bfc11
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0xc0]
mov edi, dword [esp + 0x70]
lea ecx, [esp + 0x20]
push ecx
push edx
push eax
mov eax, dword [esp + 0x44]
test esi, esi
setge cl
movzx edx, cl
mov ecx, dword [esp + 0x70]
push edx
mov edx, dword [esp + 0x58]
push 0
push eax
mov eax, dword [esp + 0x28]
push ecx
push edx
push edi
push eax
push ebx
call fcn.005bc2f0
mov esi, dword [esp + 0x64]
mov ecx, dword [esp + 0x3c]
push 0
push 0
push esi
push 0
push ecx
push ebx
call fcn.005b12d0
mov eax, dword [esp + 0xb8]
mov ecx, dword [esp + 0xa8]
add esp, 0x44
xor edx, edx
cmp dword [esp + 0x20], edx
sete dl
push edx
mov edx, dword [esp + 0x4c]
push eax
mov eax, dword [esp + 0x18]
push 0
push edi
push esi
push ecx
push edx
push eax
push ebx
call fcn.00582ee0
add esp, 0x24
mov ecx, dword [esp + 0x3c]
test byte [ecx + 0x18], 0x80
je 0x5bfc5b
mov esi, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], esi
jg 0x5bfc2e
mov edi, ebp
call fcn.0056ce30
test eax, eax
jne 0x5bfc5b
mov eax, dword [ebp + 4]
mov ecx, 1
add dword [ebp + 0x1c], ecx
lea edx, [esi + esi*4]
lea eax, [eax + edx*4]
mov edx, dword [esp + 0x6c]
mov dword [eax + 8], ecx
xor ecx, ecx
mov byte [eax], 0x22
mov byte [eax + 3], 0
mov dword [eax + 4], edx
mov dword [eax + 0xc], ecx
mov dword [eax + 0x10], ecx
mov byte [eax + 1], cl
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x34]
xor esi, esi
cmp eax, esi
je 0x5bfc94
mov edx, dword [esp + 0x2c]
push edx
mov edx, dword [esp + 0xc4]
push edx
mov edx, dword [esp + 0x18]
movsx edi, word [edx + 0x26]
sub ecx, edi
sub ecx, 2
push ecx
push edx
push 2
push esi
push 0x6a
push eax
push ebx
call fcn.005c06f0
add esp, 0x24
or eax, 0xffffffff
sub eax, dword [esp + 0x2c]
js 0x5bfcaa
mov ecx, dword [ebp + 0x28]
cmp ecx, esi
je 0x5bfcaa
mov edx, dword [ebp + 0x1c]
mov dword [ecx + eax*4], edx
cmp dword [esp + 0x44], esi
je 0x5bfd4b
mov ebx, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], ebx
jg 0x5bfcc7
mov edi, ebp
call fcn.0056ce30
test eax, eax
jne 0x5bfcf2
mov ecx, dword [ebp + 4]
inc dword [ebp + 0x1c]
mov edx, dword [esp + 0x30]
lea eax, [ebx + ebx*4]
lea eax, [ecx + eax*4]
mov ecx, dword [esp + 0x68]
mov byte [eax], 9
mov byte [eax + 3], 0
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], esi
mov dword [eax + 0x10], esi
mov byte [eax + 1], 0
mov eax, dword [esp + 0x5c]
cmp eax, esi
jl 0x5bfd0b
mov ecx, dword [ebp + 0x1c]
cmp ecx, eax
jbe 0x5bfd0b
lea edx, [eax + eax*4]
mov eax, dword [ebp + 4]
mov dword [eax + edx*4 + 8], ecx
mov ebx, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], ebx
jg 0x5bfd22
mov edi, ebp
call fcn.0056ce30
test eax, eax
jne 0x5bfda7
mov edx, dword [ebp + 4]
inc dword [ebp + 0x1c]
lea ecx, [ebx + ebx*4]
lea eax, [edx + ecx*4]
mov ecx, dword [esp + 0x30]
mov byte [eax], 0x38
mov byte [eax + 3], 0
mov dword [eax + 4], ecx
mov dword [eax + 8], esi
mov dword [eax + 0xc], esi
mov dword [eax + 0x10], esi
mov byte [eax + 1], 0
jmp 0x5bfda7
cmp dword [esp + 0xb8], esi
je 0x5bfda7
mov ebx, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], ebx
jg 0x5bfd67
mov edi, ebp
call fcn.0056ce30
test eax, eax
jne 0x5bfd8e
mov eax, dword [ebp + 4]
inc dword [ebp + 0x1c]
mov ecx, dword [esp + 0x68]
lea edx, [ebx + ebx*4]
lea eax, [eax + edx*4]
mov byte [eax], 0x10
mov byte [eax + 3], 0
mov dword [eax + 4], esi
mov dword [eax + 8], ecx
mov dword [eax + 0xc], esi
mov dword [eax + 0x10], esi
mov byte [eax + 1], 0
mov eax, dword [esp + 0x5c]
cmp eax, esi
jl 0x5bfda7
mov ecx, dword [ebp + 0x1c]
cmp ecx, eax
jbe 0x5bfda7
lea edx, [eax + eax*4]
mov eax, dword [ebp + 4]
mov dword [eax + edx*4 + 8], ecx
mov esi, dword [esp + 0x10]
test byte [esi + 0x2c], 0x10
jne 0x5bfe2a
cmp dword [esp + 0x54], 0
jne 0x5bfe2a
mov eax, dword [esp + 0x48]
mov ebx, dword [esp + 0x64]
cmp eax, ebx
jge 0x5bfdd1
push eax
push 0x38
mov eax, ebp
call fcn.0056cf60
add esp, 8
mov eax, dword [esi + 8]
mov dword [esp + 0x50], eax
test eax, eax
je 0x5bfe2a
lea esp, [esp]
mov esi, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], esi
jg 0x5bfdf3
mov edi, ebp
call fcn.0056ce30
test eax, eax
jne 0x5bfe18
mov edx, dword [ebp + 4]
inc dword [ebp + 0x1c]
lea ecx, [esi + esi*4]
lea eax, [edx + ecx*4]
xor ecx, ecx
mov byte [eax], 0x38
mov byte [eax + 3], cl
mov dword [eax + 4], ebx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ecx
mov dword [eax + 0x10], ecx
mov byte [eax + 1], cl
jmp 0x5bfe1a
xor ecx, ecx
mov eax, dword [esp + 0x50]
mov eax, dword [eax + 0x14]
inc ebx
mov dword [esp + 0x50], eax
cmp eax, ecx
jne 0x5bfde0
mov edi, dword [esp + 0xac]
cmp byte [edi + 0x12], 0
jne 0x5bfe49
cmp dword [edi + 0x1bc], 0
jne 0x5bfe49
push edi
call fcn.005947b0
add esp, 4
mov ecx, dword [esp + 0x3c]
test byte [ecx + 0x18], 0x80
je 0x5bff3c
mov edx, dword [esp + 0xac]
cmp byte [edx + 0x12], 0
jne 0x5bff3c
mov eax, edx
cmp dword [eax + 0x1bc], 0
jne 0x5bff3c
mov esi, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], esi
jg 0x5bfe8a
mov edi, ebp
call fcn.0056ce30
test eax, eax
jne 0x5bfeb6
mov eax, dword [ebp + 4]
lea ecx, [esi + esi*4]
mov esi, dword [esp + 0x6c]
lea eax, [eax + ecx*4]
mov edx, 1
add dword [ebp + 0x1c], edx
xor ecx, ecx
mov byte [eax], 0x20
mov byte [eax + 3], cl
mov dword [eax + 4], esi
mov dword [eax + 8], edx
mov dword [eax + 0xc], ecx
mov dword [eax + 0x10], ecx
mov byte [eax + 1], cl
push 1
mov ebx, ebp
call fcn.00576000
mov ecx, dword [ebp]
add esp, 4
cmp byte [ecx + 0x40], 0
jne 0x5bff3c
mov ebp, dword [ebp + 0x10]
mov eax, dword [ebp]
xor ebx, ebx
cmp eax, ebx
je 0x5bfedc
mov eax, dword [eax + 0x58]
jmp 0x5bfee1
mov eax, 0x3b9aca00
xor esi, esi
cmp eax, ebx
jl 0x5bfef4
cmp byte [esi + str.rows_inserted], bl
je 0x5bfef4
inc esi
cmp esi, eax
jle 0x5bfee7
xor edx, edx
mov edi, 0x202
push ebp
cmp edx, 0x55d750
jne 0x5bff16
call fcn.0056cbb0
mov eax, str.rows_inserted
mov dword [ebp + 4], eax
mov dword [ebp + 0x24], eax
jmp 0x5bff27
call fcn.0056cbb0
mov dword [ebp + 4], str.rows_inserted
mov edi, 0xa02
mov dword [ebp + 0x20], ebx
add esp, 4
mov dword [ebp + 0x18], esi
mov word [ebp + 0x1c], di
mov byte [ebp + 0x1f], 1
mov byte [ebp + 0x1e], 3
xor ebx, ebx
pop ebp
mov eax, dword [esp + 0xac]
mov esi, dword [esp + 0x38]
push eax
mov eax, esi
call fcn.00565760
mov ecx, dword [esp + 0xb4]
push ecx
push esi
call fcn.0056e900
mov edi, dword [esp + 0xc0]
add esp, 0xc
cmp edi, ebx
je 0x5bffe8
push edi
push esi
call fcn.00566420
add esp, 8
cmp esi, ebx
je 0x5bffdf
cmp dword [esi + 0x200], ebx
je 0x5bffb9
cmp edi, dword [esi + 0x10c]
jb 0x5bffa5
cmp edi, dword [esi + 0x110]
jae 0x5bffa5
movzx eax, word [esi + 0xf0]
mov ecx, dword [esi + 0x200]
add dword [ecx], eax
jmp 0x5bffe8
push edi
call dword [0x69fd68]
mov ecx, dword [esi + 0x200]
add esp, 4
add dword [ecx], eax
jmp 0x5bffe8
cmp edi, dword [esi + 0x10c]
jb 0x5bffdf
cmp edi, dword [esi + 0x110]
jae 0x5bffdf
mov edx, dword [esi + 0x108]
mov dword [edi], edx
dec dword [esi + 0xf4]
mov dword [esi + 0x108], edi
jmp 0x5bffe8
push edi
call fcn.0055d790
add esp, 4
mov edi, dword [esp + 0xb8]
mov eax, esi
call fcn.00565510
mov eax, dword [esp + 0x6c]
cmp eax, ebx
je 0x5c008a
cmp esi, ebx
je 0x5c0081
cmp dword [esi + 0x200], ebx
je 0x5c0053
cmp eax, dword [esi + 0x10c]
jb 0x5c0037
cmp eax, dword [esi + 0x110]
jae 0x5c0037
movzx eax, word [esi + 0xf0]
mov esi, dword [esi + 0x200]
add dword [esi], eax
pop edi
pop esi
pop ebx
add esp, 0x98
ret
push eax
call dword [0x69fd68]
mov esi, dword [esi + 0x200]
add esp, 4
add dword [esi], eax
pop edi
pop esi
pop ebx
add esp, 0x98
ret
cmp eax, dword [esi + 0x10c]
jb 0x5c0081
cmp eax, dword [esi + 0x110]
jae 0x5c0081
mov ecx, dword [esi + 0x108]
mov dword [eax], ecx
dec dword [esi + 0xf4]
pop edi
mov dword [esi + 0x108], eax
pop esi
pop ebx
add esp, 0x98
ret
push eax
call fcn.0055d790
add esp, 4
pop edi
pop esi
pop ebx
add esp, 0x98
ret