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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x9c
push ebx
push esi
push edi
mov edi, ecx
mov ebx, edx
xor ecx, ecx
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x20], edi
mov dword [esp + 0x18], ecx
mov edx, dword [edi + 8]
mov dword [esp + 0x10], edx
mov dword [esp + 0x30], ecx
mov dword [esp + 0x28], ecx
test ebx, ebx
je case.0x47f7cd.158
mov esi, dword [ebp + 8]
cmp dword [edi + 0x48], ecx
je 0x47f73a
test dword [ebx + 4], 0x800000
jne 0x47f73a
push esi
mov edx, ebx
mov ecx, edi
call fcn.0047f600
pop ecx
test eax, eax
jns 0x4805d0
xor ecx, ecx
movzx edx, byte [ebx]
mov dword [esp + 0x1c], edx
mov eax, edx
cmp edx, 0x9a
ja 0x47f7b7
je 0x47fbbe
cmp edx, 0x39
jbe 0x47f979
cmp edx, 0x72
ja 0x47f93a
je 0x47fa98
cmp edx, 0x47
je 0x47f8ad
cmp edx, 0x4d
je 0x47f80b
cmp edx, 0x65
jbe case.0x47f7cd.158
cmp edx, 0x6f
jbe 0x47f9ba
cmp edx, 0x71
jne case.0x47f7cd.158
test dword [ebx + 4], 0x200
jne case.0x47f7cd.174
mov edx, dword [ebx + 0xc]
test edx, edx
je case.0x47f7cd.174
cmp byte [edx], 0xac
je 0x47f7d4
mov ebx, dword [ebx + 0xc]
mov dword [esp + 0x2c], ebx
jmp 0x47f70c
lea eax, [edx - 0x9b]
cmp eax, 0x1a
ja case.0x47f7cd.158
movzx eax, byte [eax + 0x48061c]
jmp dword [eax*4 + 0x4805d8]
push esi
mov ecx, edi
call fcn.0047f6dc
mov edi, dword [esp + 0x14]
mov ebx, eax
pop ecx
cmp ebx, esi
je 0x47f7fa
push 0
push esi
push ebx
push 0x51
pop edx
mov ecx, edi
call fcn.0046b9a1
add esp, 0xc
mov ebx, esi
push 0
push 0
push ebx
mov edx, 0xb3
mov ecx, edi
jmp 0x4805c6
movzx edx, word [ebx + 0x20]
mov ecx, dword [ebx + 0x2c]
movsx eax, dx
mov dword [esp + 0x20], ecx
mov dword [esp + 0x2c], eax
call fcn.0048780b
movsx ecx, ax
mov edx, 0x9d
mov eax, dword [esp + 0x20]
inc ecx
push 0
push esi
movsx eax, word [eax + 0x22]
inc eax
imul eax, dword [ebx + 0x1c]
mov ebx, dword [esp + 0x18]
add eax, ecx
mov ecx, ebx
push eax
call fcn.0046b9a1
mov ecx, dword [esp + 0x38]
add esp, 0xc
test ecx, ecx
js 0x47f876
mov eax, dword [esp + 0x20]
add ecx, ecx
mov eax, dword [eax + 4]
cmp byte [eax + ecx*8 + 8], 0x45
jne 0x47f876
push 0
push 0
push esi
push 0x57
mov ecx, ebx
pop edx
call fcn.0046b9a1
add esp, 0xc
mov ebx, dword [ebp + 8]
mov edx, dword [esp + 0x18]
mov ecx, edi
call fcn.00481e9c
mov ecx, dword [esp + 0x30]
test ecx, ecx
je 0x47fbfa
mov al, byte [edi + 0x13]
cmp al, 8
jae 0x47fbfa
movzx eax, al
mov dword [edi + eax*4 + 0x9c], ecx
inc byte [edi + 0x13]
jmp 0x47fbfa
cmp dword [edi + 0x7c], ecx
jne 0x47f8ca
cmp byte [edi + 0x12], 0
jne 0x47f8ca
push str.RAISE___may_only_be_used_within_a_trigger_program
push edi
call fcn.00453b99
pop ecx
pop ecx
jmp 0x47fd38
mov al, byte [ebx + 1]
xor ecx, ecx
inc ecx
cmp al, 2
jne 0x47f8e4
cmp dword [edi + 0x78], 0
mov eax, edi
cmovne eax, dword [edi + 0x78]
mov byte [eax + 0x15], cl
mov al, byte [ebx + 1]
mov esi, dword [ebx + 8]
cmp al, 4
jne 0x47f915
mov ecx, dword [esp + 0x10]
push 0
push 4
push 0
push 0x46
pop edx
call fcn.0046b9a1
mov ecx, dword [esp + 0x1c]
add esp, 0xc
mov edx, eax
push 0
push esi
call fcn.0046c12a
pop ecx
pop ecx
jmp 0x47f876
xor edx, edx
movsx eax, al
cmp dword [edi + 0x7c], edx
push edx
push edx
push esi
push eax
mov eax, 0x713
cmovne ecx, eax
mov edx, ecx
mov ecx, edi
call fcn.0048bf76
add esp, 0x10
jmp 0x47f876
mov edx, eax
sub eax, 0x75
je 0x47f966
sub eax, 0x15
je 0x47fa42
sub eax, 0xf
jne case.0x47f7cd.158
mov edx, dword [ebx + 8]
push esi
push ecx
mov ecx, dword [esp + 0x18]
call fcn.0047f035
jmp 0x47fcc9
push dword [ebx + 8]
mov ecx, dword [esp + 0x14]
mov edx, esi
call fcn.0046ba0b
jmp 0x47fcca
cmp edx, 0x34
jae 0x47fe7f
cmp edx, 0x2d
ja 0x47fab9
je case.0x47f7cd.171
cmp edx, 0x13
je 0x47fa98
cmp edx, 0x14
je 0x47fa42
cmp edx, 0x24
je 0x47f9f7
cmp edx, 0x2a
jbe case.0x47f7cd.158
cmp edx, 0x2c
ja case.0x47f7cd.158
mov edx, dword [ebx + 0xc]
lea eax, [esp + 0x18]
push eax
mov ecx, edi
call fcn.00480754
mov edx, dword [ebx + 0x10]
mov esi, eax
pop ecx
lea eax, [esp + 0x30]
mov ecx, edi
push eax
call fcn.00480754
mov ebx, dword [ebp + 8]
mov edx, dword [esp + 0x20]
pop ecx
push ebx
push esi
push eax
mov ecx, dword [esp + 0x1c]
call fcn.0046b9a1
add esp, 0xc
jmp 0x47f879
mov edx, dword [ebx + 0xc]
mov ecx, edi
push esi
call fcn.0047f6dc
mov edi, eax
pop ecx
cmp edi, esi
je 0x47fa1e
mov ecx, dword [esp + 0x10]
push 0
push esi
push edi
push 0x51
pop edx
call fcn.0046b9a1
add esp, 0xc
mov edi, esi
mov ecx, dword [ebx + 8]
xor edx, edx
call fcn.004880db
mov ecx, dword [esp + 0x10]
push 0
movsx eax, al
push eax
push esi
push 0x58
pop edx
call fcn.0046b9a1
mov eax, edi
jmp 0x4805cd
mov eax, dword [edi]
cmp byte [eax + 0x57], 0
jne 0x47fd38
cmp edx, 0x8a
jne 0x47fa8a
test dword [ebx + 4], 0x1000
je 0x47fa8a
mov eax, dword [ebx + 0x14]
mov eax, dword [eax + 0x1c]
mov ecx, dword [eax]
xor eax, eax
inc eax
cmp ecx, eax
je 0x47fa8a
cmp dword [edi + 0x24], 0
jne 0x47f876
push eax
push ecx
push str.sub_select_returns__d_columns___expected__d
push edi
call fcn.00453b99
jmp 0x47f932
mov edx, ebx
mov ecx, edi
call fcn.0047e8b8
jmp 0x4805d0
mov edx, dword [ebx + 0xc]
lea eax, [esp + 0x18]
push eax
mov ecx, edi
call fcn.00480754
mov edx, dword [esp + 0x20]
pop ecx
mov ecx, dword [esp + 0x10]
push 0
push esi
push eax
jmp 0x47f86e
cmp edx, 0x30
je 0x47fbab
cmp edx, 0x31
je 0x47fb3b
xor ecx, ecx
lea eax, [edx - 0x32]
inc ecx
cmp eax, ecx
ja case.0x47f7cd.158
push 0
push esi
push ecx
mov ecx, dword [esp + 0x1c]
push 0x47
pop edx
call fcn.0046b9a1
mov edx, dword [ebx + 0xc]
lea eax, [esp + 0x24]
add esp, 0xc
mov ecx, edi
push eax
call fcn.00480754
mov edx, dword [esp + 0x20]
xor ebx, ebx
pop ecx
mov ecx, dword [esp + 0x10]
push ebx
push ebx
push eax
call fcn.0046b9a1
mov ecx, dword [esp + 0x1c]
add esp, 0xc
mov esi, eax
push ebx
mov ebx, dword [ebp + 8]
push ebx
push 0
push 0x47
pop edx
call fcn.0046b9a1
mov ecx, dword [esp + 0x1c]
add esp, 0xc
mov edx, esi
call fcn.0046c1e8
mov ecx, dword [ecx + 0x6c]
mov dword [eax + 8], ecx
jmp 0x47f879
mov esi, dword [edi + 0x38]
mov eax, dword [esp + 0x20]
dec esi
push ecx
push dword [ebp + 8]
push ecx
mov ecx, dword [esp + 0x1c]
lea edi, [esi - 1]
push 0x4b
pop edx
mov dword [eax + 0x38], edi
call fcn.0046b9a1
mov ecx, dword [esp + 0x2c]
add esp, 0xc
mov edx, ebx
push edi
push esi
call fcn.0047eb4a
mov ebx, dword [ebp + 8]
mov ecx, dword [esp + 0x18]
push 0
push ebx
push 1
push 0x47
pop edx
call fcn.0046b9a1
add esp, 0x14
mov edx, esi
mov esi, dword [esp + 0x10]
mov ecx, esi
call fcn.0046bd45
push 0
push 0
push ebx
push 0x56
pop edx
mov ecx, esi
call fcn.0046b9a1
add esp, 0xc
mov edx, edi
mov ecx, esi
call fcn.0046bd45
jmp 0x47fbfa
push ecx
push ecx
push esi
mov edx, ebx
mov ecx, edi
call fcn.004809f1
mov eax, esi
jmp 0x4805cd
mov esi, dword [ebx + 8]
lea ecx, [esi + 2]
call fcn.00453a51
lea edx, [esi + 2]
mov esi, dword [esp + 0x10]
lea edi, [eax - 1]
mov ecx, dword [esi]
push edi
call fcn.00454b3f
mov ebx, dword [ebp + 8]
pop ecx
push 0xfffffffffffffffa
push eax
mov eax, edi
mov ecx, esi
cdq
push 0
sub eax, edx
push ebx
sar eax, 1
push eax
push 0x4d
pop edx
call fcn.0046bac5
add esp, 0x14
mov eax, ebx
jmp 0x4805d0
movsx eax, word [ebx + 0x22]
mov ecx, dword [ebx + 0x28]
imul eax, eax, 0x14
add eax, dword [ecx + 0x1c]
cmp byte [ecx], 0
mov dword [esp + 0x30], eax
jne 0x47fc1f
mov eax, dword [eax + 0xc]
jmp 0x4805d0
cmp byte [ecx + 1], 0
je case.0x47f7cd.167
mov edi, dword [eax]
movsx eax, word [eax + 0x12]
mov ebx, dword [esp + 0x10]
push esi
push eax
push dword [ecx + 8]
mov ecx, ebx
push 0x5e
pop edx
call fcn.0046b9a1
mov eax, dword [esp + 0x3c]
add esp, 0xc
movzx eax, word [eax + 0x10]
test ax, ax
js 0x47fccb
test edi, edi
je 0x47fccb
movsx ecx, ax
mov eax, dword [edi + 4]
add ecx, ecx
cmp byte [eax + ecx*8 + 8], 0x45
jne 0x47fccb
push 0
push 0
push esi
push 0x57
pop edx
mov ecx, ebx
call fcn.0046b9a1
add esp, 0xc
jmp 0x47fccb
test byte [ebx + 4], 0x20
mov ecx, dword [ebx + 0x1c]
je 0x47fcd2
mov edx, dword [ebx + 0xc]
mov ecx, edi
push esi
call fcn.0047f6dc
movsx edx, word [ebx + 0x20]
mov esi, eax
pop ecx
mov ecx, dword [ebx + 0x2c]
call fcn.0047bd19
movsx edi, al
cmp edi, 0x41
jle 0x47fccb
mov ecx, dword [esp + 0x10]
push 0
push 1
push esi
push 0x60
pop edx
call fcn.0046b9a1
mov ecx, dword [esp + 0x1c]
add esp, 0xc
mov edx, eax
lea eax, [edi*2 + 0x85dc10]
push 0xffffffffffffffff
push eax
call fcn.0046c12a
pop ecx
pop ecx
mov eax, esi
jmp 0x4805d0
test ecx, ecx
jns 0x47fd9f
mov ecx, dword [edi + 0x34]
test ecx, ecx
jns 0x47fd9e
movzx edx, word [ebx + 0x20]
mov eax, dword [ebx + 0x2c]
movsx ebx, dx
mov dword [esp + 0x30], eax
test ebx, ebx
jns 0x47fd00
not ecx
mov eax, ecx
jmp 0x4805d0
shl ebx, 4
mov ecx, eax
add ebx, dword [eax + 4]
call fcn.0048780b
movsx ecx, ax
sub ecx, dword [edi + 0x34]
movzx eax, word [ebx + 0xe]
mov dword [esp + 0x20], ecx
test al, 0x60
je 0x47fd6f
mov edx, 0x100
test edx, eax
je 0x47fd3f
push dword [ebx]
push str.generated_column_loop_on___s_
push edi
call fcn.00453b99
add esp, 0xc
xor eax, eax
jmp 0x4805d0
or eax, edx
mov word [ebx + 0xe], ax
movzx esi, ax
test al, al
jns 0x47fd63
mov edx, dword [esp + 0x30]
push ecx
push ebx
mov ecx, edi
call fcn.0047f1ea
movzx esi, word [ebx + 0xe]
pop ecx
pop ecx
mov ecx, dword [esp + 0x20]
and esi, 0xfe7f
mov word [ebx + 0xe], si
jmp 0x47fcf9
cmp byte [ebx + 8], 0x45
jne 0x47fcf9
push 0
push esi
push ecx
mov ecx, dword [esp + 0x1c]
push 0x51
pop edx
call fcn.0046b9a1
add esp, 0xc
push 0
push 0
push esi
push 0x57
mov ecx, dword [esp + 0x20]
pop edx
call fcn.0046b9a1
jmp 0x47fbb7
dec ecx
mov al, byte [ebx + 2]
mov edx, dword [ebx + 0x2c]
mov byte [esp + 0x17], al
movsx eax, word [ebx + 0x20]
push esi
push eax
push ecx
mov ecx, dword [edi + 8]
call fcn.0047f27c
mov bl, byte [esp + 0x23]
add esp, 0xc
test bl, bl
je 0x47fccb
mov ecx, dword [edi + 8]
mov edx, dword [ecx + 0x6c]
dec edx
call fcn.0046c1e8
mov ecx, eax
cmp byte [ecx], 0x5e
jne 0x47fccb
movzx eax, bl
mov word [ecx + 2], ax
jmp 0x47fccb
push esi
push ecx
mov edx, ebx
mov ecx, edi
call fcn.0047f0a6
jmp 0x47fcc9
mov ecx, ebx
call fcn.0047be26
xor ecx, ecx
push 0
push esi
mov eax, dword [eax + 8]
cmp byte [eax + 4], cl
sete cl
push ecx
push 0x47
jmp 0x47fd8f
movsx eax, word [ebx + 0x20]
push ecx
mov ecx, dword [esp + 0x14]
push esi
push eax
push 0x4e
pop edx
call fcn.0046b9a1
mov eax, dword [ebx + 8]
add esp, 0xc
cmp byte [eax + 1], 0
je 0x47fccb
movsx edx, word [ebx + 0x20]
mov ecx, dword [edi + 0xe4]
call fcn.00455058
and dword [ecx], 0
mov edx, eax
mov ecx, dword [esp + 0x10]
push 0xffffffffffffffff
call fcn.0046c19c
jmp 0x47fcca
mov eax, dword [ebx + 0x1c]
jmp 0x4805d0
xor eax, eax
mov dword [esp + 0x28], 0x80
cmp edx, 0x2d
sete al
add eax, 0x34
mov edx, eax
mov dword [esp + 0x1c], eax
mov ecx, dword [ebx + 0xc]
mov dword [esp + 0x34], ecx
call fcn.0047c0f9
cmp eax, 1
jle 0x47fea4
push dword [esp + 0x28]
mov ecx, edi
push edx
push esi
mov edx, ebx
call fcn.0047c22b
jmp 0x47f873
lea eax, [esp + 0x18]
mov edx, ecx
push eax
mov ecx, edi
call fcn.00480754
mov edx, dword [ebx + 0x10]
mov dword [esp + 0x30], eax
lea eax, [esp + 0x34]
pop ecx
push eax
mov ecx, edi
call fcn.00480754
pop ecx
mov ecx, dword [esp + 0x10]
push 0
push esi
push 1
push 0x47
pop edx
mov dword [esp + 0x2c], eax
call fcn.0046b9a1
mov eax, dword [ebx + 4]
add esp, 0xc
mov edx, dword [esp + 0x34]
mov ecx, edi
shr eax, 0xa
and eax, 1
push eax
mov eax, dword [esp + 0x14]
push dword [esp + 0x2c]
mov eax, dword [eax + 0x6c]
add eax, 2
push eax
push dword [esp + 0x2c]
push dword [esp + 0x3c]
push dword [esp + 0x30]
push dword [ebx + 0x10]
call fcn.0047c087
mov ecx, dword [esp + 0x2c]
add esp, 0x1c
cmp dword [esp + 0x28], 0x80
jne 0x47ff2f
push 0
push esi
push 0
push 0x47
jmp 0x47f86d
push dword [esp + 0x20]
push esi
push dword [esp + 0x34]
push 0x5c
jmp 0x47f86d
mov edx, dword [ebx + 0xc]
mov al, byte [edx]
cmp al, 0x9b
jne 0x47ff50
push esi
push 1
jmp 0x47fdee
cmp al, 0x99
jne 0x47ff5f
mov edx, dword [edx + 8]
push esi
push 1
jmp 0x47f958
lea eax, [esp + 0x18]
mov dword [esp + 0x7c], ecx
push eax
lea edx, [esp + 0x78]
mov byte [esp + 0x78], 0x9b
mov ecx, edi
mov dword [esp + 0x7c], 0x10800
call fcn.00480754
mov edx, dword [ebx + 0xc]
mov esi, eax
pop ecx
lea eax, [esp + 0x30]
mov ecx, edi
push eax
call fcn.00480754
mov ebx, dword [ebp + 8]
pop ecx
push ebx
push esi
push eax
push 0x6b
pop edx
jmp 0x47f9e6
mov edx, dword [ebx + 0xc]
lea eax, [esp + 0x18]
push eax
mov ecx, edi
call fcn.00480754
pop ecx
mov ecx, dword [ebx + 0x10]
mov esi, eax
call fcn.0047be26
xor ecx, ecx
cmp byte [ebx + 2], 0x2d
mov ebx, dword [ebp + 8]
sete cl
mov eax, dword [eax + 8]
mov dl, byte [eax + 4]
xor eax, eax
test dl, dl
sete al
xor ecx, eax
xor eax, eax
push ecx
mov ecx, dword [esp + 0x14]
test dl, dl
setne al
push eax
push ebx
push esi
push 0x5b
pop edx
call fcn.0046bcab
add esp, 0x10
jmp 0x47f879
mov eax, dword [ebx + 0x28]
test eax, eax
je 0x48001c
movzx ecx, word [ebx + 0x22]
test cx, cx
js 0x48001c
movsx ecx, cx
cmp ecx, dword [eax + 0x2c]
jge 0x48001c
mov eax, dword [eax + 0x28]
imul ecx, ecx, 0x14
mov eax, dword [ecx + eax + 8]
jmp 0x4805d0
push ebx
push str.misuse_of_aggregate:__T__
push edi
call fcn.00453b99
jmp 0x47f873
and dword [esp + 0x34], 0
test dword [ebx + 4], 0x1000000
mov dword [esp + 0x28], ecx
mov ecx, dword [edi]
mov dword [esp + 0x20], ecx
mov al, byte [ecx + 0x54]
mov byte [esp + 0x24], al
je 0x480057
mov eax, dword [ebx + 0x2c]
mov eax, dword [eax + 0x38]
jmp 0x4805d0
cmp byte [edi + 0x17], 0
je 0x480083
push 0
push 2
pop edx
mov ecx, ebx
call fcn.0047daf7
pop ecx
test eax, eax
je 0x48007f
push 0xffffffffffffffff
mov edx, ebx
mov ecx, edi
call fcn.00480637
pop ecx
jmp 0x4805d0
mov ecx, dword [esp + 0x20]
mov eax, dword [ebx + 0x14]
mov dword [esp + 0x38], eax
test eax, eax
je 0x480092
mov eax, dword [eax]
jmp 0x480094
xor eax, eax
mov edx, dword [ebx + 8]
push 0
push dword [esp + 0x28]
mov dword [esp + 0x24], eax
push eax
call fcn.0048c984
add esp, 0xc
mov dword [esp + 0x24], eax
test eax, eax
je 0x4802bd
cmp dword [eax + 0x14], 0
jne 0x4802bd
test dword [eax + 4], 0x400000
je 0x4800db
mov edx, dword [esp + 0x38]
mov ecx, edi
push esi
push dword [eax + 8]
call fcn.0047f42d
pop ecx
jmp 0x480079
test dword [eax + 4], 0x280000
je 0x4800f3
push eax
mov edx, ebx
mov ecx, edi
call fcn.0047ca6b
mov eax, dword [esp + 0x28]
pop ecx
and dword [esp + 0x30], 0
mov ecx, dword [esp + 0x1c]
test ecx, ecx
jle 0x480179
mov edx, dword [esp + 0x38]
mov esi, dword [esp + 0x30]
add edx, 8
mov ebx, dword [esp + 0x28]
mov dword [esp + 0x18], edx
cmp esi, 0x20
jae 0x48013c
mov ecx, dword [esp + 0x18]
xor edx, edx
push 0
inc edx
mov ecx, dword [ecx]
call fcn.0047daf7
mov edx, dword [esp + 0x1c]
test eax, eax
mov eax, dword [esp + 0x28]
pop ecx
mov ecx, dword [esp + 0x1c]
je 0x48013c
bts ebx, esi
test byte [eax + 4], 0x20
je 0x480162
cmp dword [esp + 0x34], 0
jne 0x480162
mov edx, dword [edx]
mov ecx, edi
call fcn.0047be61
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x24]
inc esi
add edx, 0x14
mov dword [esp + 0x18], edx
cmp esi, ecx
jl 0x480113
mov esi, dword [ebp + 8]
mov dword [esp + 0x28], ebx
mov ebx, dword [esp + 0x2c]
mov edx, dword [esp + 0x38]
test edx, edx
je 0x4801f9
cmp dword [esp + 0x28], 0
je 0x4801a0
mov eax, dword [edi + 0x2c]
lea esi, [eax + 1]
add eax, ecx
mov dword [esp + 0x18], esi
mov esi, dword [ebp + 8]
mov ecx, dword [esp + 0x18]
mov dword [edi + 0x2c], eax
jmp 0x4801b3
mov edx, ecx
mov ecx, edi
call fcn.00481eb5
mov edx, dword [esp + 0x38]
mov ecx, eax
mov dword [esp + 0x18], ecx
mov eax, dword [esp + 0x24]
test byte [eax + 4], 0xc0
je 0x4801e4
mov ebx, dword [edx + 8]
mov bl, byte [ebx]
mov byte [esp + 0x17], bl
cmp bl, 0xa7
mov ebx, dword [esp + 0x2c]
je 0x4801d6
cmp byte [esp + 0x17], 0xa9
jne 0x4801e4
mov esi, dword [edx + 8]
mov al, byte [eax + 4]
and al, 0xc0
mov byte [esi + 2], al
mov esi, dword [ebp + 8]
push 3
push 0
push ecx
mov ecx, edi
call fcn.004808a8
mov edx, dword [esp + 0x44]
add esp, 0xc
jmp 0x4801fe
and dword [esp + 0x18], 0
mov eax, dword [esp + 0x1c]
cmp eax, 2
jl 0x480229
test dword [ebx + 4], 0x100
je 0x48022d
push dword [edx + 0x1c]
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x24]
push eax
call fcn.004a7278
pop ecx
pop ecx
mov dword [esp + 0x24], eax
jmp 0x480236
test eax, eax
jle 0x480232
push dword [edx + 8]
jmp 0x480213
mov eax, dword [esp + 0x24]
test byte [eax + 4], 0x20
je 0x480275
cmp dword [esp + 0x34], 0
jne 0x48024e
mov eax, dword [esp + 0x20]
mov eax, dword [eax + 8]
mov dword [esp + 0x34], eax
mov ecx, dword [esp + 0x10]
xor eax, eax
push eax
push eax
push eax
push 0x55
pop edx
call fcn.0046b9a1
mov ecx, dword [esp + 0x1c]
add esp, 0xc
mov edx, eax
push 0xfffffffffffffffe
push dword [esp + 0x38]
call fcn.0046c12a
pop ecx
pop ecx
movzx eax, byte [ebx + 2]
mov ecx, edi
mov ebx, dword [esp + 0x1c]
mov edx, dword [esp + 0x28]
push eax
push dword [esp + 0x28]
push ebx
push esi
push dword [esp + 0x28]
call fcn.0046baf4
add esp, 0x14
test ebx, ebx
je 0x47fccb
cmp dword [esp + 0x28], 0
jne 0x47fccb
mov edx, dword [esp + 0x18]
mov ecx, edi
push ebx
call fcn.00481eeb
add esp, 4
jmp 0x47fccb
push ebx
push str.unknown_function:__T__
jmp 0x480022
mov esi, dword [ebx + 0xc]
cmp dword [esi + 0x1c], ecx
je 0x4802d8
mov al, byte [edi + 0x1a]
cmp al, byte [esi + 2]
jbe 0x4802ea
mov edx, esi
mov ecx, edi
call fcn.0047e8b8
mov dword [esi + 0x1c], eax
mov al, byte [edi + 0x1a]
mov byte [esi + 2], al
mov ecx, esi
call fcn.0047c0f9
cmp dword [ebx + 0x1c], eax
je 0x480308
push eax
push dword [ebx + 0x1c]
push str._d_columns_assigned__d_values
push edi
call fcn.00453b99
add esp, 0x10
movsx eax, word [ebx + 0x20]
add eax, dword [esi + 0x1c]
jmp 0x4805d0
push str.row_value_misused
push edi
call fcn.00453b99
jmp 0x47f90e
mov al, byte [edi + 0x17]
mov edx, dword [ebx + 0x28]
mov byte [esp + 0x17], al
test edx, edx
je 0x48037b
cmp byte [edx], 0
jne 0x48034a
movsx eax, word [ebx + 0x22]
imul ecx, eax, 0x14
mov eax, dword [edx + 0x1c]
mov ebx, dword [ecx + eax + 0xc]
jmp 0x47f879
cmp byte [edx + 1], 0
je 0x48037b
movsx eax, word [ebx + 0x22]
imul ecx, eax, 0x14
mov eax, dword [edx + 0x1c]
push esi
movsx eax, word [ecx + eax + 0x12]
mov ecx, dword [esp + 0x14]
push eax
push dword [edx + 8]
push 0x5e
pop edx
call fcn.0046b9a1
add esp, 0xc
mov dword [ebp + 8], esi
jmp 0x47f876
push ecx
push ecx
push dword [ebx + 0x1c]
mov ecx, dword [esp + 0x1c]
push 0x14
pop edx
call fcn.0046b9a1
add esp, 0xc
mov byte [edi + 0x17], 0
mov edx, dword [ebx + 0xc]
mov ecx, edi
mov esi, eax
push dword [ebp + 8]
call fcn.0047f6dc
mov ebx, eax
mov edx, esi
mov al, byte [esp + 0x1b]
pop ecx
mov ecx, dword [esp + 0x10]
mov byte [edi + 0x17], al
call fcn.0046c1e8
mov ecx, dword [ecx + 0x6c]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x10]
call fcn.0046c1e8
mov dword [eax + 0xc], ebx
jmp 0x47f879
mov edx, dword [ebx + 0x14]
mov eax, dword [edi]
mov dword [esp + 0x28], ecx
mov dword [esp + 0x38], ecx
lea ecx, [edx + 8]
mov dword [esp + 0x3c], edx
mov edx, dword [edx]
dec dword [edi + 0x38]
mov ebx, dword [ebx + 0xc]
mov esi, dword [edi + 0x38]
mov dword [esp + 0x24], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x34], edx
mov dword [esp + 0x2c], esi
test ebx, ebx
je 0x48047d
push 0
push 0
mov edx, ebx
mov ecx, eax
call fcn.0047cd6c
mov esi, eax
mov eax, dword [esp + 0x2c]
pop ecx
pop ecx
mov dword [esp + 0x38], esi
cmp byte [eax + 0x57], 0
je 0x480436
test esi, esi
je 0x47f876
mov edx, esi
mov ecx, eax
call fcn.0047cbeb
jmp 0x47f876
lea eax, [esp + 0x18]
mov edx, esi
push eax
mov ecx, edi
call fcn.0047f3a7
pop ecx
mov edx, eax
mov ecx, esi
call fcn.0047f38b
push 0x34
lea eax, [esp + 0x44]
push 0
push eax
call fcn.00719250
mov ecx, dword [esp + 0x28]
lea eax, [esp + 0x4c]
mov edx, dword [esp + 0x40]
add esp, 0xc
and dword [esp + 0x18], 0
mov byte [esp + 0x40], 0x35
mov dword [esp + 0x4c], esi
mov dword [esp + 0x28], eax
lea eax, [edx - 1]
test eax, eax
jle 0x480544
dec eax
shr eax, 1
inc eax
test ebx, ebx
mov ebx, dword [ebp + 8]
mov dword [esp + 0x20], eax
je 0x4804f1
mov esi, dword [edi + 0x38]
mov eax, dword [ecx]
dec esi
push 0x10
push esi
push dword [esp + 0x30]
mov dword [esp + 0x5c], eax
push edi
mov dword [edi + 0x38], esi
call fcn.00480e00
mov edx, dword [esp + 0x2c]
mov ecx, edi
push ebx
mov edx, dword [edx + 0x14]
call fcn.004807d0
mov edx, dword [esp + 0x40]
add esp, 0x14
mov ecx, dword [esp + 0x10]
call fcn.0046b9fa
mov edx, esi
mov esi, dword [esp + 0x10]
mov ecx, esi
call fcn.0046bd45
mov ecx, dword [esp + 0x1c]
add ecx, 0x28
sub dword [esp + 0x20], 1
mov dword [esp + 0x1c], ecx
jne 0x480497
jmp 0x48054b
mov esi, dword [edi + 0x38]
mov eax, dword [ecx]
dec esi
push 0x10
push esi
push eax
push edi
mov dword [edi + 0x38], esi
call fcn.00480e00
mov edx, dword [esp + 0x2c]
mov ecx, edi
push ebx
mov edx, dword [edx + 0x14]
call fcn.004807d0
mov edx, dword [esp + 0x40]
add esp, 0x14
mov ecx, dword [esp + 0x10]
call fcn.0046b9fa
mov edx, esi
mov esi, dword [esp + 0x10]
mov ecx, esi
call fcn.0046bd45
mov ecx, dword [esp + 0x1c]
add ecx, 0x28
sub dword [esp + 0x20], 1
mov dword [esp + 0x1c], ecx
jne 0x4804f1
jmp 0x48054b
mov ebx, dword [ebp + 8]
mov esi, dword [esp + 0x10]
mov ecx, dword [esp + 0x34]
test cl, 1
je 0x48056a
mov eax, dword [esp + 0x3c]
imul edx, ecx, 0x14
mov ecx, edi
push ebx
mov edx, dword [edx + eax - 0xc]
call fcn.004807d0
pop ecx
jmp 0x48057c
push 0
push ebx
push 0
push 0x4b
pop edx
mov ecx, esi
call fcn.0046b9a1
add esp, 0xc
mov eax, dword [esp + 0x38]
test eax, eax
je 0x48058f
mov ecx, dword [esp + 0x24]
mov edx, eax
call fcn.0047cbeb
mov edx, dword [esi + 0x6c]
mov ecx, esi
dec edx
call fcn.0046c1e8
cmp byte [eax], 0x50
jne 0x4805a7
xor edx, edx
inc edx
call fcn.0046bf17
mov edx, dword [esp + 0x2c]
mov ecx, esi
call fcn.0046bd45
jmp 0x47f879
mov ebx, dword [ebp + 8]
mov ecx, dword [esp + 0x10]
push 0
push ebx
push 0
push 0x4b
pop edx
call fcn.0046b9a1
mov eax, ebx
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret