Function at 0x43a208
Capabilities:
Resolve function by parsing pe exports
Terminate process

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x94
push ebx
mov ebx, ecx
push esi
push edi
mov edi, edx
mov dword [esp + 0x2c], ebx
mov esi, dword [ebx + 8]
xor edx, edx
mov dword [esp + 0x20], edi
mov dword [esp + 0xc], esi
mov dword [esp + 0x14], edx
mov dword [esp + 0x10], edx
mov dword [esp + 0x24], edx
test esi, esi
jne 0x43a243
xor eax, eax
jmp 0x43af72
test edi, edi
je 0x43ad0d
movzx ecx, byte [edi]
mov dword [esp + 0x1c], ecx
cmp ecx, 0x94
ja 0x43a2aa
je 0x43a57e
cmp ecx, 0x39
jbe 0x43a396
cmp ecx, 0x6e
ja 0x43ad10
je 0x43a45a
cmp ecx, 0x47
je 0x43a325
cmp ecx, 0x4d
je 0x43a2c7
cmp ecx, 0x62
jbe case.0x43a2c0.152
cmp ecx, 0x6c
jbe 0x43a3d7
cmp ecx, 0x6d
jne case.0x43a2c0.152
mov edi, dword [edi + 0xc]
mov dword [esp + 0x20], edi
jmp 0x43a243
lea eax, [ecx - 0x95]
cmp eax, 0x1b
ja case.0x43a2c0.152
movzx eax, byte [eax + 0x43afc0]
jmp dword [eax*4 + 0x43af7c]
mov eax, dword [edi + 0x28]
mov esi, dword [ebp + 8]
mov dword [esp + 0x14], eax
push edx
movsx ecx, word [eax + 0x2a]
mov edx, 0x95
movsx eax, word [edi + 0x1c]
inc ecx
imul ecx, dword [edi + 0x18]
push esi
inc ecx
add eax, ecx
mov ecx, dword [esp + 0x14]
push eax
call fcn.004293f8
movzx eax, word [edi + 0x1c]
add esp, 0xc
test ax, ax
js 0x43af30
movsx ecx, ax
mov eax, dword [esp + 0x14]
add ecx, ecx
mov eax, dword [eax + 4]
cmp byte [eax + ecx*8 + 0xd], 0x45
jne 0x43af30
xor eax, eax
push eax
push eax
push esi
push 0x54
jmp 0x43a8ad
cmp dword [ebx + 0x70], edx
jne 0x43a33d
push str.RAISE___may_only_be_used_within_a_trigger_program
push ebx
call fcn.00414f88
pop ecx
xor eax, eax
jmp 0x43af71
mov al, byte [edi + 1]
cmp al, 2
jne 0x43a354
cmp dword [ebx + 0x6c], edx
mov eax, ebx
cmovne eax, dword [ebx + 0x6c]
mov byte [eax + 0x15], 1
mov al, byte [edi + 1]
mov edi, dword [edi + 8]
push edx
cmp al, 4
jne 0x43a37f
push 4
push edx
push 0x45
pop edx
mov ecx, esi
call fcn.004293f8
add esp, 0xc
mov edx, eax
mov ecx, esi
push 0
push edi
call fcn.00429ab9
pop ecx
pop ecx
jmp 0x43af30
push edx
movsx eax, al
mov edx, 0x713
push edi
push eax
mov ecx, ebx
call fcn.004441a8
jmp 0x43af2d
cmp ecx, 0x34
jae 0x43a7d6
cmp ecx, 0x2d
ja 0x43a47f
je case.0x43a2c0.166
cmp ecx, 0x13
je 0x43a45a
cmp ecx, 0x14
je 0x43af0c
cmp ecx, 0x24
je 0x43a414
cmp ecx, 0x2a
jbe case.0x43a2c0.152
cmp ecx, 0x2c
ja case.0x43a2c0.152
mov edx, dword [edi + 0xc]
lea eax, [esp + 0x10]
push eax
mov ecx, ebx
call fcn.0043b074
mov edx, dword [edi + 0x10]
mov esi, eax
pop ecx
lea eax, [esp + 0x24]
mov ecx, ebx
push eax
call fcn.0043b074
mov edx, dword [esp + 0x20]
pop ecx
mov ecx, dword [ebp + 8]
push ecx
push esi
push eax
mov ecx, dword [esp + 0x18]
call fcn.004293f8
add esp, 0xc
jmp 0x43af30
mov esi, dword [ebp + 8]
mov ecx, ebx
mov edx, dword [edi + 0xc]
push esi
call fcn.0043a208
mov ebx, eax
pop ecx
cmp ebx, esi
je 0x43a43e
mov ecx, dword [esp + 0xc]
push 0
push esi
push ebx
push 0x4f
pop edx
call fcn.004293f8
add esp, 0xc
mov ebx, esi
mov ecx, dword [edi + 8]
xor edx, edx
call fcn.004409f8
mov ecx, dword [esp + 0xc]
push 0
movsx eax, al
push eax
push esi
push 0x55
jmp 0x43a5c1
mov edx, dword [edi + 0xc]
lea eax, [esp + 0x10]
push eax
mov ecx, ebx
call fcn.0043b074
mov edx, dword [esp + 0x20]
pop ecx
mov ecx, dword [ebp + 8]
push ecx
push eax
mov ecx, esi
call fcn.00429462
jmp 0x43a378
cmp ecx, 0x30
je 0x43a565
cmp ecx, 0x31
je 0x43a4f8
lea eax, [ecx - 0x32]
cmp eax, 1
ja case.0x43a2c0.152
push edx
push dword [ebp + 8]
mov ecx, esi
push 1
push 0x46
pop edx
call fcn.004293f8
mov edx, dword [edi + 0xc]
lea eax, [esp + 0x1c]
add esp, 0xc
mov ecx, ebx
push eax
call fcn.0043b074
mov edx, dword [esp + 0x20]
pop ecx
push eax
mov ecx, esi
call fcn.00429451
mov edi, dword [esp + 0x10]
mov esi, eax
pop ecx
mov ecx, dword [ebp + 8]
xor eax, eax
push eax
push ecx
push eax
push 0x46
pop edx
mov ecx, edi
call fcn.004293f8
add esp, 0xc
mov edx, esi
mov ecx, edi
call fcn.00429b75
mov ecx, dword [edi + 0x6c]
mov dword [eax + 8], ecx
jmp 0x43af30
mov esi, dword [ebx + 0x38]
mov ecx, dword [esp + 0xc]
dec esi
push edx
push dword [ebp + 8]
push edx
push 0x49
lea edi, [esi - 1]
pop edx
mov dword [ebx + 0x38], edi
call fcn.004293f8
mov edx, dword [esp + 0x2c]
add esp, 0xc
mov ecx, ebx
push edi
push esi
call fcn.004399f8
mov ecx, dword [esp + 0x14]
xor ebx, ebx
push ebx
push dword [ebp + 8]
push 1
push 0x46
pop edx
call fcn.004293f8
add esp, 0x14
mov edx, esi
mov esi, dword [esp + 0xc]
mov ecx, esi
call fcn.004296f7
push ebx
push ebx
mov ebx, dword [ebp + 8]
mov ecx, esi
push ebx
push 0x53
pop edx
call fcn.004293f8
add esp, 0xc
mov edx, edi
mov ecx, esi
call fcn.004296f7
jmp 0x43a5ca
mov esi, dword [ebp + 8]
mov ecx, ebx
push edx
push edx
push esi
mov edx, edi
call fcn.0043b2e0
add esp, 0xc
mov eax, esi
jmp 0x43af72
mov ebx, dword [ebp + 8]
push ebx
push edx
mov edx, dword [edi + 8]
mov ecx, esi
call fcn.00439f62
pop ecx
mov eax, ebx
jmp 0x43af71
movsx eax, word [edi + 0x1e]
mov ecx, dword [edi + 0x24]
imul eax, eax, 0x18
add eax, dword [ecx + 0x1c]
cmp byte [ecx], dl
jne 0x43a5ae
mov eax, dword [eax + 0x10]
jmp 0x43af72
cmp byte [ecx + 1], dl
je case.0x43a2c0.162
mov ebx, dword [ebp + 8]
push ebx
push dword [eax + 0xc]
push dword [ecx + 8]
push 0x5a
mov ecx, esi
pop edx
call fcn.004293f8
add esp, 0xc
mov eax, ebx
jmp 0x43af72
test byte [edi + 4], 8
mov ecx, dword [edi + 0x18]
je 0x43a665
mov esi, dword [ebp + 8]
mov ecx, ebx
mov edx, dword [edi + 0xc]
push esi
call fcn.0043a208
pop ecx
movsx ecx, word [edi + 0x1c]
mov dword [esp + 0x24], eax
test ecx, ecx
js 0x43a60c
mov eax, dword [edi + 0x28]
shl ecx, 4
mov eax, dword [eax + 4]
mov cl, byte [eax + ecx + 0xd]
mov eax, dword [esp + 0x24]
jmp 0x43a60e
mov cl, 0x44
movsx edi, cl
cmp edi, 0x41
jle 0x43a65c
mov ebx, dword [esp + 0xc]
cmp eax, esi
je 0x43a635
push 0
push esi
push eax
push 0x4f
pop edx
mov ecx, ebx
call fcn.004293f8
mov eax, esi
add esp, 0xc
mov dword [esp + 0x24], eax
push 0
push 1
push eax
push 0x5b
pop edx
mov ecx, ebx
call fcn.004293f8
add esp, 0xc
mov edx, eax
lea eax, [edi*2 + 0x4d020c]
mov ecx, ebx
push 0xffffffffffffffff
push eax
call fcn.00429ab9
pop ecx
pop ecx
mov eax, dword [esp + 0x24]
jmp 0x43af72
test ecx, ecx
jns 0x43a6c8
mov eax, dword [ebx + 0x34]
mov dword [esp + 0x24], eax
test eax, eax
jns 0x43a6c5
movzx eax, word [edi + 0x1c]
movsx ebx, ax
mov dword [esp + 0x14], ebx
test ax, ax
js 0x43a6bc
mov eax, dword [edi + 0x28]
mov ecx, ebx
add ecx, ecx
mov eax, dword [eax + 4]
cmp byte [eax + ecx*8 + 0xd], 0x45
jne 0x43a6bc
mov eax, dword [esp + 0x14]
mov ecx, esi
mov ebx, dword [ebp + 8]
sub eax, dword [esp + 0x24]
push edx
push ebx
push eax
push 0x4f
pop edx
call fcn.004293f8
add esp, 0xc
xor eax, eax
push eax
push eax
push ebx
push 0x54
jmp 0x43a5bf
sub ebx, dword [esp + 0x24]
jmp 0x43a5ca
lea ecx, [eax - 1]
push dword [ebp + 8]
movsx eax, word [edi + 0x1c]
mov edx, dword [edi + 0x28]
mov bl, byte [edi + 0x22]
push eax
push ecx
mov ecx, esi
call fcn.0043a0c0
add esp, 0xc
test bl, bl
je 0x43ac3b
movzx edx, bl
mov ecx, esi
call fcn.004298e0
jmp 0x43ac3b
mov esi, dword [ebp + 8]
push esi
push edx
mov edx, edi
mov ecx, ebx
call fcn.00439fc5
pop ecx
mov eax, esi
jmp 0x43af71
mov ecx, edi
call fcn.004371ed
mov ebx, dword [ebp + 8]
xor ecx, ecx
push edx
push ebx
mov eax, dword [eax + 8]
cmp byte [eax + 4], cl
sete cl
push ecx
push 0x46
jmp 0x43a5bf
mov esi, dword [edi + 8]
lea ecx, [esi + 2]
call fcn.00414e83
lea edx, [esi + 2]
mov esi, dword [esp + 0xc]
lea edi, [eax - 1]
mov ecx, dword [esi]
push edi
call fcn.00415cf2
mov ebx, dword [ebp + 8]
pop ecx
push 0xfffffffffffffff9
push eax
mov eax, edi
mov ecx, esi
cdq
push 0
sub eax, edx
push ebx
sar eax, 1
push eax
push 0x4b
pop edx
call fcn.00429535
add esp, 0x14
jmp 0x43a5ca
movsx eax, word [edi + 0x1c]
mov ecx, esi
push edx
push dword [ebp + 8]
push eax
push 0x4c
pop edx
call fcn.004293f8
mov eax, dword [edi + 8]
add esp, 0xc
cmp byte [eax + 1], 0
je 0x43ac3b
movsx edx, word [edi + 0x1c]
mov ecx, dword [ebx + 0xd0]
call fcn.00416159
and dword [ecx], 0
mov edx, eax
push 0xffffffffffffffff
mov ecx, esi
call fcn.00429b2b
pop ecx
jmp 0x43ac3b
mov eax, dword [edi + 0x18]
jmp 0x43af72
xor eax, eax
mov edx, 0x80
cmp ecx, 0x2d
mov dword [esp + 0x14], edx
sete al
lea esi, [eax + 0x34]
mov dword [esp + 0x1c], esi
jmp 0x43a7da
mov esi, dword [esp + 0x1c]
mov ecx, dword [edi + 0xc]
mov dword [esp + 0x20], ecx
call fcn.004374bf
cmp eax, 1
jle 0x43a7fe
push edx
push esi
push dword [ebp + 8]
mov edx, edi
mov ecx, ebx
call fcn.004375c3
jmp 0x43a40c
lea eax, [esp + 0x10]
mov edx, ecx
push eax
mov ecx, ebx
call fcn.0043b074
mov edx, dword [edi + 0x10]
mov esi, eax
pop ecx
lea eax, [esp + 0x24]
mov ecx, ebx
push eax
call fcn.0043b074
mov edx, dword [esp + 0x24]
pop ecx
mov ecx, dword [esp + 0x14]
or ecx, 0x20
push ecx
mov ecx, dword [ebp + 8]
push ecx
push eax
push esi
push dword [esp + 0x2c]
mov ecx, ebx
push dword [edi + 0x10]
call fcn.0043745f
add esp, 0x18
jmp 0x43af30
mov eax, dword [edi + 0xc]
mov cl, byte [eax]
cmp cl, 0x96
jne 0x43a85e
mov esi, dword [ebp + 8]
mov edx, eax
push esi
push 1
jmp 0x43a6ff
cmp cl, 0x94
jne 0x43a871
mov ebx, dword [ebp + 8]
mov edx, dword [eax + 8]
push ebx
push 1
jmp 0x43a586
lea eax, [esp + 0x10]
mov dword [esp + 0x78], edx
push eax
lea edx, [esp + 0x74]
mov byte [esp + 0x74], 0x96
mov ecx, ebx
mov dword [esp + 0x78], 0x4400
call fcn.0043b074
mov edx, dword [edi + 0xc]
mov esi, eax
pop ecx
lea eax, [esp + 0x24]
mov ecx, ebx
push eax
call fcn.0043b074
pop ecx
mov ecx, dword [ebp + 8]
push ecx
push esi
push eax
push 0x68
pop edx
jmp 0x43a403
mov edx, dword [edi + 0xc]
lea eax, [esp + 0x10]
push eax
mov ecx, ebx
call fcn.0043b074
pop ecx
mov ecx, dword [edi + 0x10]
mov esi, eax
call fcn.004371ed
xor edx, edx
cmp byte [edi + 0x22], 0x2d
sete dl
xor ecx, ecx
mov eax, dword [eax + 8]
mov bl, byte [eax + 4]
test bl, bl
sete cl
xor eax, eax
xor edx, ecx
mov ecx, dword [esp + 0xc]
push edx
test bl, bl
setne al
push eax
push dword [ebp + 8]
push esi
push 0x58
pop edx
call fcn.0042965e
mov ebx, dword [esp + 0x3c]
jmp 0x43af2d
mov eax, dword [edi + 0x24]
test eax, eax
jne 0x43a921
push dword [edi + 8]
push str.misuse_of_aggregate:__s__
push ebx
call fcn.00414f88
jmp 0x43a40c
movsx ecx, word [edi + 0x1e]
mov eax, dword [eax + 0x28]
add ecx, ecx
mov eax, dword [eax + ecx*8 + 8]
jmp 0x43af72
test dword [edi + 4], 0x1000000
mov eax, dword [ebx]
mov dword [esp + 0x14], eax
mov dword [esp + 0x34], edx
mov dword [esp + 0x30], edx
mov al, byte [eax + 0x4e]
mov byte [esp + 0x28], al
je 0x43a95c
mov eax, dword [edi + 0x28]
mov eax, dword [eax + 0x38]
jmp 0x43af72
cmp byte [ebx + 0x17], dl
je 0x43a983
push edx
push 2
pop edx
mov ecx, edi
call fcn.00438ac3
pop ecx
test eax, eax
je 0x43a981
push 0xffffffffffffffff
mov edx, edi
mov ecx, ebx
call fcn.0043afdc
jmp 0x43af71
xor edx, edx
test dword [edi + 4], 0x4000
je 0x43aa48
mov dword [esp + 0x1c], edx
mov eax, edx
mov ecx, dword [edi + 8]
push edx
push dword [esp + 0x2c]
mov dword [esp + 0x44], ecx
mov edx, ecx
mov ecx, dword [esp + 0x1c]
push eax
mov dword [esp + 0x24], eax
call fcn.00444a91
mov ecx, eax
add esp, 0xc
mov dword [esp + 0x28], ecx
test ecx, ecx
je 0x43ac43
xor eax, eax
cmp dword [ecx + 0x14], eax
jne 0x43ac43
mov ecx, dword [ecx + 4]
test ecx, 0x200
je 0x43aa5e
mov edi, dword [esp + 0x1c]
mov ecx, ebx
dec dword [ebx + 0x38]
mov eax, dword [ebx + 0x38]
mov esi, dword [ebp + 8]
mov edx, dword [edi + 4]
push esi
mov dword [esp + 0x24], eax
call fcn.0043b0ed
mov eax, dword [esp + 0x1c]
pop ecx
cmp eax, 1
jle 0x43aa36
add edi, 0x1c
dec eax
mov dword [esp + 0x14], eax
mov ecx, dword [esp + 0xc]
push 0
push dword [esp + 0x24]
push esi
push 0x33
pop edx
call fcn.004293f8
mov edx, dword [edi]
add esp, 0xc
mov ecx, ebx
push esi
call fcn.0043b0ed
sub dword [esp + 0x18], 1
lea edi, [edi + 0x18]
pop ecx
jne 0x43aa0b
mov edx, dword [esp + 0x20]
mov ecx, dword [esp + 0xc]
call fcn.004296f7
jmp 0x43af30
mov ecx, dword [edi + 0x14]
mov dword [esp + 0x1c], ecx
test ecx, ecx
je 0x43a994
mov eax, dword [ecx]
jmp 0x43a996
test ecx, 0x400
je 0x43aa7c
mov edx, dword [esp + 0x1c]
mov ecx, ebx
push dword [ebp + 8]
mov edx, dword [edx + 4]
call fcn.0043a208
jmp 0x43af71
mov ecx, dword [esp + 0x18]
test ecx, ecx
jle 0x43aafa
mov edx, dword [esp + 0x1c]
mov edi, eax
mov esi, dword [esp + 0x28]
add edx, 4
mov dword [esp + 0x10], edx
cmp edi, 0x20
jge 0x43aac1
mov ecx, dword [esp + 0x10]
xor edx, edx
push eax
inc edx
mov ecx, dword [ecx]
call fcn.00438ac3
mov edx, dword [esp + 0x14]
pop ecx
mov ecx, dword [esp + 0x18]
test eax, eax
je 0x43aac1
mov eax, dword [esp + 0x34]
bts eax, edi
mov dword [esp + 0x34], eax
test byte [esi + 4], 0x20
je 0x43aae3
cmp dword [esp + 0x30], 0
jne 0x43aae3
mov edx, dword [edx]
mov ecx, ebx
call fcn.00437228
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x10]
mov dword [esp + 0x30], eax
inc edi
add edx, 0x18
mov dword [esp + 0x10], edx
push 0
pop eax
cmp edi, ecx
jl 0x43aa95
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0xc]
mov edx, dword [esp + 0x1c]
test edx, edx
je 0x43ab7c
cmp dword [esp + 0x34], 0
je 0x43ab22
mov eax, dword [ebx + 0x2c]
lea edi, [eax + 1]
add eax, ecx
mov dword [esp + 0x10], edi
mov edi, dword [esp + 0x20]
mov ecx, dword [esp + 0x10]
mov dword [ebx + 0x2c], eax
jmp 0x43ab35
mov edx, ecx
mov ecx, ebx
call fcn.0043c481
mov edx, dword [esp + 0x1c]
mov ecx, eax
mov dword [esp + 0x10], ecx
mov eax, dword [esp + 0x28]
test byte [eax + 4], 0xc0
je 0x43ab67
mov ebx, dword [edx + 4]
mov bl, byte [ebx]
mov byte [esp + 0x3b], bl
cmp bl, 0xa2
mov ebx, dword [esp + 0x2c]
je 0x43ab58
cmp byte [esp + 0x3b], 0xa4
jne 0x43ab67
mov esi, dword [edx + 4]
mov al, byte [eax + 4]
and al, 0xc0
mov byte [esi + 0x22], al
mov esi, dword [esp + 0xc]
push 3
push 0
push ecx
mov ecx, ebx
call fcn.0043b1aa
mov edx, dword [esp + 0x28]
add esp, 0xc
jmp 0x43ab80
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x18]
cmp eax, 2
jl 0x43aba6
test byte [edi + 4], 0x80
je 0x43aba6
push dword [edx + 0x1c]
mov edx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x18]
push eax
call fcn.0045a764
pop ecx
pop ecx
mov edi, eax
jmp 0x43abb3
test eax, eax
jle 0x43abaf
push dword [edx + 4]
jmp 0x43ab92
mov edi, dword [esp + 0x28]
test byte [edi + 4], 0x20
je 0x43abee
cmp dword [esp + 0x30], 0
jne 0x43abcb
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 8]
mov dword [esp + 0x30], eax
xor eax, eax
mov ecx, esi
push eax
push eax
push eax
push 0x52
pop edx
call fcn.004293f8
add esp, 0xc
mov edx, eax
mov ecx, esi
push 0xfffffffffffffffe
push dword [esp + 0x34]
call fcn.00429ab9
pop ecx
pop ecx
mov edx, dword [ebx + 0x34]
mov ecx, esi
push 0xfffffffffffffff8
push edi
push dword [ebp + 8]
mov edi, dword [esp + 0x1c]
neg edx
push edi
push dword [esp + 0x44]
sbb edx, edx
add edx, 0x3f
call fcn.00429535
mov eax, dword [esp + 0x2c]
add esp, 0x14
movzx edx, al
mov ecx, esi
call fcn.004298e0
mov eax, dword [esp + 0x18]
test eax, eax
je 0x43ac3b
cmp dword [esp + 0x34], 0
jne 0x43ac3b
push eax
mov edx, edi
mov ecx, ebx
call fcn.0043c4b7
add esp, 4
mov eax, dword [ebp + 8]
jmp 0x43af72
push dword [esp + 0x3c]
push str.unknown_function:__s__
jmp 0x43a916
mov ecx, dword [edi + 0xc]
cmp dword [ecx + 0x18], edx
jne 0x43ac6b
mov edx, ecx
mov ecx, ebx
call fcn.00439799
mov ecx, dword [edi + 0xc]
mov dword [ecx + 0x18], eax
mov ecx, dword [edi + 0xc]
mov edx, dword [edi + 0x18]
test edx, edx
je 0x43ac8e
call fcn.004374bf
cmp edx, eax
je 0x43ac8e
push eax
push edx
push str._d_columns_assigned__d_values
push ebx
call fcn.00414f88
mov ecx, dword [edi + 0xc]
add esp, 0x10
movsx eax, word [edi + 0x1c]
add eax, dword [ecx + 0x18]
jmp 0x43af72
push str.row_value_misused
push ebx
call fcn.00414f88
jmp 0x43a378
mov bl, byte [ebx + 0x17]
mov ecx, esi
push edx
push edx
push dword [edi + 0x18]
push 0x15
pop edx
call fcn.004293f8
mov ecx, dword [ebp + 8]
mov esi, eax
mov eax, dword [esp + 0x38]
add esp, 0xc
mov byte [eax + 0x17], 0
mov edx, dword [edi + 0xc]
push ecx
mov ecx, eax
call fcn.0043a208
pop ecx
mov ecx, dword [esp + 0x2c]
mov edx, esi
mov dword [ebp + 8], eax
mov byte [ecx + 0x17], bl
mov ebx, dword [esp + 0xc]
mov ecx, ebx
call fcn.00429b75
mov ecx, dword [ebx + 0x6c]
mov edx, esi
mov dword [eax + 8], ecx
mov ecx, ebx
call fcn.00429b75
mov ecx, dword [ebp + 8]
mov ebx, dword [esp + 0x2c]
mov dword [eax + 0xc], ecx
jmp 0x43af30
push 0x75
pop ecx
mov eax, ecx
sub eax, 0x71
je 0x43af61
sub eax, 4
je 0x43af54
sub eax, 0x11
je 0x43af0c
mov ecx, dword [edi + 0x14]
mov eax, dword [ebx]
mov dword [esp + 0x30], ecx
add ecx, 4
mov dword [esp + 0x18], ecx
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x20], edx
mov dword [esp + 0x28], edx
mov dword [esp + 0x1c], eax
mov ecx, dword [ecx]
dec dword [ebx + 0x38]
mov dword [esp + 0x34], ecx
mov ecx, dword [ebx + 0x38]
mov dword [esp + 0x2c], ecx
mov ecx, dword [edi + 0xc]
mov dword [esp + 0x3c], ecx
test ecx, ecx
je 0x43adf2
push edx
mov edx, ecx
mov ecx, eax
call fcn.00438129
mov edi, eax
mov eax, dword [esp + 0x20]
pop ecx
mov dword [esp + 0x28], edi
cmp byte [eax + 0x51], 0
je 0x43ad9d
test edi, edi
je 0x43af30
mov edx, edi
mov ecx, eax
call fcn.00437c71
jmp 0x43af30
lea eax, [esp + 0x10]
mov edx, edi
push eax
mov ecx, ebx
call fcn.0043a183
pop ecx
mov ecx, edi
mov edx, eax
call fcn.00437202
push 0x30
push 0
mov cl, byte [eax]
and dword [eax + 4], 0xffffefff
mov byte [eax + 0x22], cl
mov byte [eax], 0xab
mov dword [eax + 0x18], edx
lea eax, [esp + 0x48]
push eax
call fcn.0049ee30
mov ecx, dword [esp + 0x48]
lea edx, [esp + 0x4c]
add esp, 0xc
mov byte [esp + 0x40], 0x35
and dword [esp + 0x10], 0
mov dword [esp + 0x4c], edi
mov dword [esp + 0x20], edx
mov eax, dword [esp + 0x34]
mov edi, dword [ebp + 8]
dec eax
test eax, eax
jle 0x43aebe
dec eax
shr eax, 1
inc eax
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x18]
test ecx, ecx
je 0x43ae6d
mov esi, dword [ebx + 0x38]
mov eax, dword [eax]
dec esi
push 0x10
push esi
push edx
push ebx
mov dword [esp + 0x60], eax
mov dword [ebx + 0x38], esi
call fcn.0043b6df
mov ecx, dword [esp + 0x28]
push edi
mov edx, dword [ecx + 0x18]
mov ecx, ebx
call fcn.0043b0ed
mov edx, dword [esp + 0x40]
add esp, 0x14
mov ecx, dword [esp + 0xc]
call fcn.00429475
mov edx, esi
mov esi, dword [esp + 0xc]
mov ecx, esi
call fcn.004296f7
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x20]
add eax, 0x30
sub dword [esp + 0x14], 1
mov dword [esp + 0x18], eax
jne 0x43ae12
jmp 0x43aebe
mov esi, dword [ebx + 0x38]
mov eax, dword [eax]
dec esi
push 0x10
push esi
push eax
push ebx
mov dword [ebx + 0x38], esi
call fcn.0043b6df
mov ecx, dword [esp + 0x28]
push edi
mov edx, dword [ecx + 0x18]
mov ecx, ebx
call fcn.0043b0ed
mov edx, dword [esp + 0x40]
add esp, 0x14
mov ecx, dword [esp + 0xc]
call fcn.00429475
mov edx, esi
mov esi, dword [esp + 0xc]
mov ecx, esi
call fcn.004296f7
mov eax, dword [esp + 0x18]
add eax, 0x30
sub dword [esp + 0x14], 1
mov dword [esp + 0x18], eax
jne 0x43ae6d
mov eax, dword [esp + 0x34]
test al, 1
je 0x43aedc
imul edx, eax, 0x18
mov ecx, ebx
mov eax, dword [esp + 0x30]
push edi
mov edx, dword [edx + eax - 0x14]
call fcn.0043b0ed
pop ecx
jmp 0x43aeee
xor eax, eax
mov ecx, esi
push eax
push edi
push eax
push 0x49
pop edx
call fcn.004293f8
add esp, 0xc
mov eax, dword [esp + 0x28]
test eax, eax
je 0x43af01
mov ecx, dword [esp + 0x1c]
mov edx, eax
call fcn.00437c71
mov edx, dword [esp + 0x2c]
mov ecx, esi
jmp 0x43aa3e
cmp ecx, 0x86
jne 0x43af49
mov eax, dword [edi + 0x14]
mov eax, dword [eax]
cmp dword [eax], 1
je 0x43af49
push 1
push dword [eax]
push str.sub_select_returns__d_columns___expected__d
push ebx
call fcn.00414f88
add esp, 0x10
mov edx, dword [esp + 0x10]
mov ecx, ebx
call fcn.0043c468
mov edx, dword [esp + 0x24]
call fcn.0043c468
jmp 0x43ac3b
mov edx, edi
mov ecx, ebx
call fcn.00439799
jmp 0x43af72
mov ebx, dword [ebp + 8]
push edx
push ebx
push edx
push 0x49
jmp 0x43a5bf
push dword [edi + 8]
mov edx, dword [ebp + 8]
mov ecx, esi
call fcn.00429486
mov eax, dword [ebp + 8]
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret