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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x94
push ebx
push esi
push edi
mov edi, ecx
mov dword [esp + 0x18], 0
mov ebx, edx
mov dword [esp + 0x14], edi
mov dword [esp + 0x30], ebx
mov dword [esp + 0x24], 0
mov esi, dword [edi + 8]
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], 0
nop word [eax + eax]
test ebx, ebx
jne 0x4474a9
lea edx, [ebx + 0x79]
jmp 0x4474d2
cmp dword [edi + 0x48], 0
je 0x4474cf
test dword [ebx + 4], 0x800000
jne 0x4474cf
push dword [ebp + 8]
mov edx, ebx
mov ecx, edi
call fcn.00447320
add esp, 4
test eax, eax
jns 0x448369
movzx edx, byte [ebx]
lea eax, [edx - 0x13]
mov dword [esp + 0x1c], edx
cmp eax, 0xa2
ja case.0x4474eb.21
movzx eax, byte [eax + 0x4483ec]
jmp dword [eax*4 + 0x448370]
test dword [ebx + 4], 0x200
je 0x447504
mov ebx, dword [ebx + 0xc]
mov dword [esp + 0x30], ebx
jmp 0x4474a0
mov esi, dword [ebp + 8]
mov ecx, edi
mov edx, dword [ebx + 0xc]
push esi
call fcn.00448740
mov ecx, dword [esp + 0x10]
add esp, 4
mov edx, 0xb3
push esi
call fcn.0042a4e0
add esp, 4
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebx + 0x28]
movsx edx, word [ebx + 0x22]
cmp edx, dword [ecx + 0x18]
jl 0x44755c
push dword [ebp + 8]
mov edx, 0x4b
mov ecx, esi
push 0
call fcn.0042a540
mov ebx, dword [ebp + 8]
add esp, 8
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, edx
shl eax, 4
add eax, dword [ecx + 0x14]
cmp byte [ecx], 0
mov dword [esp + 0x14], eax
jne 0x447579
mov eax, dword [ecx + 0xc]
add eax, edx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp byte [ecx + 1], 0
je 0x4475e1
mov edi, dword [eax]
mov edx, 0x5e
mov ebx, dword [ebp + 8]
movsx eax, word [eax + 0xe]
push ebx
push eax
push dword [ecx + 8]
mov ecx, esi
call fcn.0042a410
add esp, 0xc
test edi, edi
je 0x448367
mov eax, dword [esp + 0x14]
movzx eax, word [eax + 0xc]
test ax, ax
js 0x448367
movsx ecx, ax
mov eax, dword [edi + 4]
add ecx, ecx
cmp byte [eax + ecx*8 + 8], 0x45
jne 0x448367
push ebx
mov edx, 0x57
mov ecx, esi
call fcn.0042a4e0
add esp, 4
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [ebx + 0x2c], 0
jne case.0x4474eb.167
mov esi, dword [ebp + 8]
mov edx, 0x5e
movsx eax, word [ebx + 0x20]
mov ecx, dword [esp + 0xc]
push esi
push eax
push dword [ebx + 0x1c]
call fcn.0042a410
add esp, 0xc
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
test byte [ebx + 4], 0x20
mov ecx, dword [ebx + 0x1c]
je 0x447663
push dword [ebp + 8]
mov edx, dword [ebx + 0xc]
mov ecx, edi
call fcn.00447460
movsx edx, word [ebx + 0x20]
add esp, 4
mov ecx, dword [ebx + 0x2c]
mov edi, eax
call fcn.00441580
movsx eax, al
cmp eax, 0x41
jle 0x44765a
push 0xffffffffffffffff
lea eax, [eax*2 + 0x5d28d4]
mov edx, 0x60
push eax
push 0
push 1
push edi
mov ecx, esi
call fcn.0042a830
add esp, 0x14
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
test ecx, ecx
jns 0x447733
mov eax, dword [edi + 0x34]
test eax, eax
jns 0x447730
movsx edx, word [ebx + 0x20]
mov ecx, dword [ebx + 0x2c]
mov dword [esp + 0x14], ecx
test edx, edx
jns 0x44768e
not eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ebx, edx
shl ebx, 4
add ebx, dword [ecx + 4]
call fcn.00451c30
movsx ecx, ax
sub ecx, dword [edi + 0x34]
movzx eax, word [ebx + 0xe]
mov dword [esp + 0x2c], ecx
test al, 0x60
je 0x447700
test eax, 0x100
je 0x4476cd
push dword [ebx]
push str.generated_column_loop_on___s_
push edi
call fcn.00409b70
add esp, 0xc
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
or eax, 0x100
mov word [ebx + 0xe], ax
test al, al
jns 0x4476ee
mov edx, dword [esp + 0x14]
push ecx
push ebx
mov ecx, edi
call fcn.00446c00
mov ecx, dword [esp + 0x34]
add esp, 8
mov eax, 0xfe7f
and word [ebx + 0xe], ax
mov eax, ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp byte [ebx + 8], 0x45
jne 0x4476f7
mov ebx, dword [ebp + 8]
mov edx, 0x51
push ebx
push ecx
mov ecx, esi
call fcn.0042a540
push ebx
mov edx, 0x57
mov ecx, esi
call fcn.0042a4e0
add esp, 0xc
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea ecx, [eax - 1]
movzx eax, byte [ebx + 2]
mov edx, dword [ebx + 0x2c]
push eax
push dword [ebp + 8]
movsx eax, word [ebx + 0x20]
push ecx
push eax
mov ecx, edi
call fcn.00446ec0
add esp, 0x10
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [ebp + 8]
mov edx, ebx
push esi
push 0
mov ecx, edi
call fcn.004469e0
add esp, 8
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [ebp + 8]
mov ecx, ebx
push esi
call fcn.00443f60
mov ecx, dword [esp + 0x10]
mov edx, 0x47
push eax
call fcn.0042a540
add esp, 8
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [ebp + 8]
mov edx, dword [ebx + 8]
mov ecx, dword [esp + 0xc]
push esi
push 0
call fcn.00446930
add esp, 8
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push dword [ebx + 8]
mov edx, dword [ebp + 8]
mov ecx, esi
call fcn.0042a620
mov eax, dword [ebp + 8]
add esp, 4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [ebx + 8]
lea ecx, [esi + 2]
call fcn.00409890
lea edx, [esi + 2]
mov esi, dword [esp + 0xc]
lea edi, [eax - 1]
mov ecx, dword [esi]
push edi
call fcn.0040ada0
mov ebx, dword [ebp + 8]
add esp, 4
mov ecx, esi
push 0xfffffffffffffffa
push eax
mov eax, edi
cdq
sub eax, edx
mov edx, 0x4d
push 0
sar eax, 1
push ebx
push eax
call fcn.0042a830
add esp, 0x14
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push dword [ebp + 8]
movsx eax, word [ebx + 0x20]
mov edx, 0x4e
push eax
mov ecx, esi
call fcn.0042a540
mov eax, dword [ebx + 8]
add esp, 8
cmp byte [eax + 1], 0
je 0x44785e
mov esi, dword [edi + 0xe8]
mov ecx, esi
movsx edx, word [ebx + 0x20]
call fcn.0040b330
mov ecx, dword [esp + 0xc]
mov edx, eax
push 0xffffffffffffffff
mov dword [esi], 0
call fcn.0042b4d0
add esp, 4
mov eax, dword [ebp + 8]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebx + 0x1c]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [ebp + 8]
mov ecx, edi
mov edx, dword [ebx + 0xc]
push esi
call fcn.00448740
mov ecx, dword [ebx + 8]
add esp, 4
xor edx, edx
call fcn.00452690
mov ecx, dword [esp + 0xc]
mov edx, 0x58
movsx eax, al
push eax
push esi
call fcn.0042a540
add esp, 8
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
xor eax, eax
mov dword [esp + 0x10], 0x80
cmp edx, 0x2d
sete al
lea edx, [eax + 0x34]
mov dword [esp + 0x1c], edx
mov eax, dword [ebx + 0xc]
mov ecx, eax
mov dword [esp + 0x14], eax
call fcn.00441cd0
mov ecx, edi
test eax, eax
je 0x4478f5
push dword [esp + 0x10]
push edx
push dword [ebp + 8]
mov edx, ebx
call fcn.00441f00
mov ebx, dword [ebp + 8]
add esp, 0xc
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [esp + 0x14]
lea eax, [esp + 0x18]
push eax
call fcn.00448670
mov edx, dword [ebx + 0x10]
add esp, 4
mov dword [esp + 0x28], eax
mov ecx, edi
lea eax, [esp + 0x24]
push eax
call fcn.00448670
add esp, 4
mov dword [esp + 0x2c], eax
mov edx, 0x47
mov ecx, esi
push dword [ebp + 8]
push 1
call fcn.0042a540
mov eax, dword [ebx + 4]
mov ecx, edi
mov edx, dword [esp + 0x1c]
shr eax, 0xa
and eax, 1
push eax
push dword [esp + 0x1c]
mov eax, dword [esi + 0x6c]
add eax, 2
push eax
push dword [esp + 0x40]
push dword [esp + 0x40]
push dword [esp + 0x38]
push dword [ebx + 0x10]
call fcn.00441bc0
add esp, 0x24
mov ecx, esi
cmp dword [esp + 0x10], 0x80
jne 0x447986
push dword [ebp + 8]
mov edx, 0x47
push 0
call fcn.0042a540
add esp, 8
jmp 0x447b44
push dword [esp + 0x2c]
mov edx, 0x5c
push dword [ebp + 8]
push dword [esp + 0x30]
call fcn.0042a410
add esp, 0xc
jmp 0x447b44
mov edx, dword [ebx + 0xc]
lea eax, [esp + 0x18]
push eax
mov ecx, edi
call fcn.00448670
mov edx, dword [ebx + 0x10]
add esp, 4
mov esi, eax
mov ecx, edi
lea eax, [esp + 0x24]
push eax
call fcn.00448670
mov ebx, dword [ebp + 8]
add esp, 4
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0xc]
push ebx
push esi
push eax
call fcn.0042a410
add esp, 0xc
jmp 0x447b47
mov edx, dword [ebx + 0xc]
mov al, byte [edx]
cmp al, 0x9b
jne 0x447a06
mov ebx, dword [ebp + 8]
mov ecx, edi
push ebx
push 1
call fcn.004469e0
add esp, 8
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp al, 0x99
jne 0x447a26
mov ebx, dword [ebp + 8]
mov ecx, esi
mov edx, dword [edx + 8]
push ebx
push 1
call fcn.00446930
add esp, 8
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea eax, [esp + 0x18]
mov byte [esp + 0x6c], 0x9b
push eax
lea edx, [esp + 0x70]
mov dword [esp + 0x74], 0x10800
mov ecx, edi
mov dword [esp + 0x78], 0
call fcn.00448670
mov edx, dword [ebx + 0xc]
add esp, 4
mov esi, eax
mov ecx, edi
lea eax, [esp + 0x24]
push eax
call fcn.00448670
mov ebx, dword [ebp + 8]
add esp, 4
mov ecx, dword [esp + 0xc]
mov edx, 0x6b
push ebx
push esi
push eax
call fcn.0042a410
add esp, 0xc
jmp 0x447b47
mov edx, dword [ebx + 0xc]
lea eax, [esp + 0x18]
push eax
mov ecx, edi
call fcn.00448670
mov ebx, dword [ebp + 8]
add esp, 4
mov edx, dword [esp + 0x1c]
mov ecx, esi
push ebx
push eax
call fcn.0042a540
add esp, 8
jmp 0x447b47
mov edx, dword [ebx + 0xc]
lea eax, [esp + 0x18]
push eax
mov ecx, edi
call fcn.00448670
mov ecx, dword [ebx + 0x10]
add esp, 4
mov edx, eax
call fcn.00443f60
mov ecx, eax
xor eax, eax
cmp byte [ebx + 2], 0x2d
sete al
xor eax, ecx
push eax
xor eax, eax
test ecx, ecx
mov ecx, esi
sete al
push eax
push dword [ebp + 8]
push edx
mov edx, 0x5b
call fcn.0042ab00
add esp, 0x10
jmp 0x447b44
push dword [ebp + 8]
mov edx, 0x47
mov ecx, esi
push 1
call fcn.0042a540
mov edx, dword [ebx + 0xc]
lea eax, [esp + 0x20]
push eax
mov ecx, edi
call fcn.00448670
mov edx, dword [esp + 0x28]
add esp, 0xc
mov ecx, esi
push eax
call fcn.0042a4e0
mov ecx, dword [esp + 0x10]
add esp, 4
mov edx, 0x47
mov esi, eax
push dword [ebp + 8]
push 0
call fcn.0042a540
mov ecx, dword [esp + 0x14]
add esp, 8
mov edx, esi
call fcn.0042afa0
mov ebx, dword [ebp + 8]
mov ecx, dword [esp + 0x18]
test ecx, ecx
je 0x447b63
mov al, byte [edi + 0x13]
cmp al, 8
jae 0x447b63
movzx eax, al
mov dword [edi + eax*4 + 0xa0], ecx
inc byte [edi + 0x13]
mov ecx, dword [esp + 0x24]
test ecx, ecx
je 0x448367
mov al, byte [edi + 0x13]
cmp al, 8
jae 0x448367
movzx eax, al
mov dword [edi + eax*4 + 0xa0], ecx
mov eax, ebx
inc byte [edi + 0x13]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x447bb7
movzx eax, word [ebx + 0x22]
test ax, ax
js 0x447bb7
movsx edx, ax
cmp edx, dword [ecx + 0x24]
jge 0x447bb7
mov eax, dword [ecx + 0x18]
add eax, dword [ecx + 0xc]
add eax, edx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push ebx
push str.misuse_of_aggregate:__T__
push edi
call fcn.00409b70
mov ebx, dword [ebp + 8]
add esp, 0xc
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
test dword [ebx + 4], 0x1000000
mov ecx, dword [edi]
mov dword [esp + 0x14], 0
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], 0
mov al, byte [ecx + 0x54]
mov byte [esp + 0x10], al
je 0x447c05
mov eax, dword [ebx + 0x2c]
mov eax, dword [eax + 0x38]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp byte [edi + 0x17], 0
je 0x447c2f
mov ecx, ebx
call fcn.004441a0
test eax, eax
je 0x447c2b
push 0xffffffffffffffff
mov edx, ebx
mov ecx, edi
call fcn.00448490
add esp, 4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [esp + 0x28]
mov eax, dword [ebx + 0x14]
mov dword [esp + 0x24], eax
test eax, eax
je 0x447c3e
mov eax, dword [eax]
jmp 0x447c40
xor eax, eax
mov edx, dword [ebx + 8]
push 0
push dword [esp + 0x14]
mov dword [esp + 0x24], eax
push eax
call fcn.00458570
add esp, 0xc
mov dword [esp + 0x18], eax
test eax, eax
je 0x447e56
cmp dword [eax + 0x14], 0
jne 0x447e56
mov ecx, dword [eax + 4]
test ecx, 0x400000
je 0x447c92
push dword [ebp + 8]
mov edx, dword [esp + 0x28]
mov ecx, edi
push dword [eax + 8]
call fcn.004470d0
add esp, 8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
test ecx, 0x280000
je 0x447ca7
push eax
mov edx, ebx
mov ecx, edi
call fcn.00442a60
add esp, 4
mov ecx, dword [esp + 0x1c]
xor eax, eax
mov dword [esp + 0x10], eax
test ecx, ecx
jle 0x447d15
mov esi, dword [esp + 0x24]
add esi, 8
xor ebx, ebx
nop
cmp eax, 0x20
jge 0x447cd7
mov ecx, dword [esi]
call fcn.00444160
test eax, eax
mov eax, dword [esp + 0x10]
je 0x447cd7
bts ebx, eax
mov ecx, dword [esp + 0x18]
test byte [ecx + 4], 0x20
je 0x447cf9
cmp dword [esp + 0x2c], 0
jne 0x447cf9
mov edx, dword [esi]
mov ecx, edi
call fcn.00441920
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x1c]
inc eax
add esi, 0x14
mov dword [esp + 0x10], eax
cmp eax, ecx
jl 0x447cc0
mov esi, dword [esp + 0xc]
mov dword [esp + 0x14], ebx
mov ebx, dword [esp + 0x30]
mov edx, dword [esp + 0x24]
test edx, edx
je 0x447d97
cmp dword [esp + 0x14], 0
je 0x447d3d
mov eax, dword [edi + 0x2c]
lea esi, [eax + 1]
add eax, ecx
mov dword [esp + 0x10], esi
mov esi, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [edi + 0x2c], eax
jmp 0x447d50
mov edx, ecx
mov ecx, edi
call fcn.0044a550
mov edx, dword [esp + 0x24]
mov ecx, eax
mov dword [esp + 0x10], ecx
mov eax, dword [esp + 0x18]
test byte [eax + 4], 0xc0
je 0x447d82
mov ebx, dword [edx + 8]
mov bl, byte [ebx]
mov byte [esp + 0x23], bl
cmp bl, 0xa7
mov ebx, dword [esp + 0x30]
je 0x447d73
cmp byte [esp + 0x23], 0xa9
jne 0x447d82
mov esi, dword [edx + 8]
mov al, byte [eax + 4]
and al, 0xc0
mov byte [esi + 2], al
mov esi, dword [esp + 0xc]
push 3
push 0
push ecx
mov ecx, edi
call fcn.004488b0
mov edx, dword [esp + 0x30]
add esp, 0xc
jmp 0x447d9f
mov dword [esp + 0x10], 0
mov eax, dword [esp + 0x1c]
cmp eax, 2
jl 0x447dcb
test dword [ebx + 4], 0x100
je 0x447dcb
push dword [edx + 0x1c]
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x2c]
push eax
call fcn.0047fb00
add esp, 8
mov dword [esp + 0x18], eax
jmp 0x447dd8
test eax, eax
jle 0x447dd4
push dword [edx + 8]
jmp 0x447db4
mov eax, dword [esp + 0x18]
test byte [eax + 4], 0x20
je 0x447e05
mov eax, dword [esp + 0x2c]
test eax, eax
jne 0x447ded
mov eax, dword [esp + 0x28]
mov eax, dword [eax + 8]
push 0xfffffffffffffffe
push eax
push 0
push 0
push 0
mov edx, 0x55
mov ecx, esi
call fcn.0042a830
add esp, 0x14
movzx eax, byte [ebx + 2]
mov ecx, edi
mov ebx, dword [ebp + 8]
mov esi, dword [esp + 0x14]
mov edx, esi
push eax
push dword [esp + 0x1c]
push dword [esp + 0x24]
push ebx
push dword [esp + 0x20]
call fcn.0042a8b0
mov eax, dword [esp + 0x30]
add esp, 0x14
test eax, eax
je 0x448367
test esi, esi
jne 0x448367
mov edx, dword [esp + 0x10]
mov ecx, edi
push eax
call fcn.0044a5b0
add esp, 4
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push ebx
push str.unknown_function:__T__
push edi
call fcn.00409b70
mov ebx, dword [ebp + 8]
add esp, 0xc
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [edi]
cmp byte [eax + 0x57], 0
jne 0x4476c4
cmp edx, 0x8a
jne 0x447ec2
test dword [ebx + 4], 0x1000
je 0x447ec2
mov eax, dword [ebx + 0x14]
mov eax, dword [eax + 0x1c]
mov eax, dword [eax]
cmp eax, 1
je 0x447ec2
cmp dword [edi + 0x24], 0
jne 0x448346
push 1
push eax
push str.sub_select_returns__d_columns___expected__d
push edi
call fcn.00409b70
mov ebx, dword [ebp + 8]
add esp, 0x10
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, ebx
mov ecx, edi
call fcn.00445840
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [ebx + 0xc]
cmp dword [esi + 0x1c], 0
je 0x447ee3
mov al, byte [edi + 0x1a]
cmp al, byte [esi + 2]
jbe 0x447ef5
mov edx, esi
mov ecx, edi
call fcn.00445840
mov dword [esi + 0x1c], eax
mov al, byte [edi + 0x1a]
mov byte [esi + 2], al
mov ecx, esi
call fcn.00441d10
mov ecx, dword [ebx + 0x1c]
cmp ecx, eax
je 0x447f13
push eax
push ecx
push str._d_columns_assigned__d_values
push edi
call fcn.00409b70
add esp, 0x10
movsx eax, word [ebx + 0x20]
add eax, dword [esi + 0x1c]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [edi + 0x38]
mov edx, 0x4b
mov eax, dword [esp + 0x14]
dec esi
push dword [ebp + 8]
mov ecx, dword [esp + 0x10]
push 0
lea edi, [esi - 1]
mov dword [eax + 0x38], edi
call fcn.0042a540
mov ecx, dword [esp + 0x1c]
mov edx, ebx
push edi
push esi
call fcn.00445ba0
mov ebx, dword [ebp + 8]
mov edx, 0x47
mov ecx, dword [esp + 0x1c]
push ebx
push 1
call fcn.0042a540
mov edx, esi
mov esi, dword [esp + 0x24]
mov ecx, esi
call fcn.0042acb0
push 0
push ebx
mov edx, 0x56
mov ecx, esi
call fcn.0042a540
add esp, 0x20
mov edx, edi
mov ecx, esi
call fcn.0042acb0
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [ebp + 8]
mov edx, ebx
push 0
push 0
push esi
mov ecx, edi
call fcn.00448ac0
add esp, 0xc
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebx + 0x2c]
mov ecx, eax
movsx edi, word [ebx + 0x20]
push dword [ebp + 8]
mov edx, edi
mov dword [esp + 0x18], eax
call fcn.00451c30
movsx ecx, ax
mov edx, 0x9d
mov eax, dword [esp + 0x18]
inc ecx
movsx eax, word [eax + 0x22]
inc eax
imul eax, dword [ebx + 0x1c]
add eax, ecx
mov ecx, esi
push eax
call fcn.0042a540
add esp, 8
test edi, edi
js 0x448346
mov eax, dword [esp + 0x14]
add edi, edi
mov eax, dword [eax + 4]
cmp byte [eax + edi*8 + 8], 0x45
jne 0x448346
push dword [ebp + 8]
mov edx, 0x57
mov ecx, esi
call fcn.0042a4e0
mov ebx, dword [ebp + 8]
add esp, 4
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push str.row_value_misused
push edi
call fcn.00409b70
mov ebx, dword [ebp + 8]
add esp, 8
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov al, byte [edi + 0x17]
mov edx, dword [ebx + 0x28]
mov byte [esp + 0x23], al
test edx, edx
je 0x448098
cmp byte [edx], 0
jne 0x448062
movsx ebx, word [ebx + 0x22]
add ebx, dword [edx + 0xc]
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp byte [edx + 1], 0
je 0x448098
movsx ecx, word [ebx + 0x22]
mov eax, dword [edx + 0x14]
add ecx, ecx
push dword [ebp + 8]
movsx eax, word [eax + ecx*8 + 0xe]
mov ecx, esi
push eax
push dword [edx + 8]
mov edx, 0x5e
call fcn.0042a410
mov ebx, dword [ebp + 8]
add esp, 0xc
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push dword [ebp + 8]
mov edx, 0x14
mov ecx, esi
push 0
push dword [ebx + 0x1c]
call fcn.0042a410
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.00448740
mov al, byte [esp + 0x27]
add esp, 4
mov ecx, dword [esp + 0xc]
mov edx, esi
mov byte [edi + 0x17], al
call fcn.0042afa0
mov ebx, dword [ebp + 8]
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebx + 0x14]
xor edx, edx
mov eax, dword [edi]
mov dword [esp + 0x2c], eax
mov dword [esp + 0x34], ecx
lea eax, [ecx + 8]
mov dword [esp + 0x14], edx
mov ecx, dword [ecx]
dec dword [edi + 0x38]
mov ebx, dword [ebx + 0xc]
mov dword [esp + 0x24], ecx
mov ecx, dword [edi + 0x38]
mov dword [esp + 0x1c], edx
mov dword [esp + 0x28], eax
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebx
test ebx, ebx
je 0x4481a1
mov ecx, dword [esp + 0x2c]
push edx
push edx
mov edx, ebx
call fcn.00442e60
mov ebx, eax
add esp, 8
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x1c], ebx
cmp byte [eax + 0x57], 0
je 0x44815d
test ebx, ebx
je 0x448346
mov edx, ebx
mov ecx, eax
call fcn.00442c20
mov ebx, dword [ebp + 8]
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea eax, [esp + 0x18]
mov edx, ebx
push eax
mov ecx, edi
call fcn.00446fd0
add esp, 4
mov edx, eax
mov ecx, ebx
call fcn.00446f90
push 0x34
lea eax, [esp + 0x3c]
push 0
push eax
call fcn.00563230
mov eax, dword [esp + 0x34]
lea edx, [esp + 0x44]
mov dword [esp + 0x50], ebx
add esp, 0xc
mov ebx, dword [esp + 0x10]
mov byte [esp + 0x38], 0x35
mov dword [esp + 0x14], edx
mov ecx, dword [esp + 0x24]
dec ecx
test ecx, ecx
jle 0x448234
dec ecx
shr ecx, 1
inc ecx
mov dword [esp + 0x30], ecx
test ebx, ebx
je 0x4481c2
mov eax, dword [eax]
mov dword [esp + 0x48], eax
jmp 0x4481c8
mov edx, dword [eax]
mov dword [esp + 0x14], edx
dec dword [edi + 0x38]
mov ebx, dword [edi + 0x38]
push 0x10
push ebx
push edx
push edi
call fcn.00448ff0
mov edx, dword [esp + 0x38]
mov ecx, edi
push dword [ebp + 8]
mov edx, dword [edx + 0x14]
call fcn.00448740
mov edx, dword [esp + 0x20]
add esp, 0x14
mov ecx, esi
call fcn.0042a5b0
mov ecx, dword [esi + 0xc]
not ebx
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x448211
push ebx
mov edx, esi
call fcn.0042ac00
add esp, 4
jmp 0x44821a
mov ecx, dword [ecx + 0x40]
mov eax, dword [esi + 0x6c]
mov dword [ecx + ebx*4], eax
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x14]
add eax, 0x28
sub dword [esp + 0x30], 1
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x28], eax
jne 0x4481b6
mov eax, dword [esp + 0x24]
push dword [ebp + 8]
test al, 1
je 0x448256
lea edx, [eax + eax*4]
mov ecx, edi
mov eax, dword [esp + 0x38]
mov edx, dword [eax + edx*4 - 0xc]
call fcn.00448740
add esp, 4
jmp 0x448267
push 0
mov edx, 0x4b
mov ecx, esi
call fcn.0042a540
add esp, 8
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x44827a
mov ecx, dword [esp + 0x2c]
mov edx, eax
call fcn.00442c20
mov ecx, esi
call fcn.00447090
mov ecx, dword [esi + 0xc]
mov edx, dword [esp + 0xc]
not edx
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x4482a9
push edx
mov edx, esi
call fcn.0042ac00
mov ebx, dword [ebp + 8]
add esp, 4
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ecx + 0x40]
mov eax, dword [esi + 0x6c]
mov ebx, dword [ebp + 8]
mov dword [ecx + edx*4], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [edi + 0x7c], 0
jne 0x4482e1
cmp byte [edi + 0x12], 0
jne 0x4482e1
push str.RAISE___may_only_be_used_within_a_trigger_program
push edi
call fcn.00409b70
add esp, 8
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp byte [ebx + 1], 2
jne 0x4482f5
mov eax, dword [edi + 0x78]
mov ecx, edi
test eax, eax
cmovne ecx, eax
mov byte [ecx + 0x15], 1
mov al, byte [ebx + 1]
push 0
cmp al, 4
jne 0x448322
push dword [ebx + 8]
mov edx, 0x46
mov ecx, esi
push 0
push 4
push 0
call fcn.0042a830
mov ebx, dword [ebp + 8]
add esp, 0x14
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [edi + 0x7c], 0
mov edx, 1
push 0
push dword [ebx + 8]
movsx eax, al
mov ecx, edi
push eax
mov eax, 0x713
cmovne edx, eax
call fcn.00457690
add esp, 0x10
mov ebx, dword [ebp + 8]
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ebx, dword [ebp + 8]
mov edx, 0x4b
push ebx
push 0
mov ecx, esi
call fcn.0042a540
add esp, 8
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret