Function at 0x449f90
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 + 0xc], edi
mov dword [esp + 0x30], ebx
mov dword [esp + 0x24], 0
mov esi, dword [edi + 8]
mov dword [esp + 0x10], esi
mov dword [esp + 0x14], 0
nop word [eax + eax]
test ebx, ebx
jne 0x449fd9
lea edx, [ebx + 0x79]
jmp 0x44a002
cmp dword [edi + 0x48], 0
je 0x449fff
test dword [ebx + 4], 0x800000
jne 0x449fff
push dword [ebp + 8]
mov edx, ebx
mov ecx, edi
call fcn.00449cc0
add esp, 4
test eax, eax
jns 0x44aed2
movzx edx, byte [ebx]
lea eax, [edx - 0x13]
mov dword [esp + 0x1c], edx
cmp eax, 0xa2
ja case.0x44a01b.21
movzx eax, byte [eax + 0x44af58]
jmp dword [eax*4 + 0x44aedc]
test dword [ebx + 4], 0x200
je 0x44a034
mov ebx, dword [ebx + 0xc]
mov dword [esp + 0x30], ebx
jmp 0x449fd0
mov esi, dword [ebp + 8]
mov ecx, edi
mov edx, dword [ebx + 0xc]
push esi
call fcn.0044b2b0
mov ecx, dword [esp + 0x14]
add esp, 4
mov edx, 0xb4
push esi
call fcn.0042c560
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 0x44a08c
push dword [ebp + 8]
mov edx, 0x4b
mov ecx, esi
push 0
call fcn.0042c5c0
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 + 0xc], eax
jne 0x44a0a9
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 0x44a111
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.0042c630
add esp, 0xc
test edi, edi
je 0x44aed0
mov eax, dword [esp + 0xc]
movzx eax, word [eax + 0xc]
test ax, ax
js 0x44aed0
movsx ecx, ax
mov eax, dword [edi + 4]
add ecx, ecx
cmp byte [eax + ecx*8 + 8], 0x45
jne 0x44aed0
push ebx
mov edx, 0x57
mov ecx, esi
call fcn.0042c560
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.0x44a01b.167
mov esi, dword [ebp + 8]
mov edx, 0x5e
movsx eax, word [ebx + 0x20]
mov ecx, dword [esp + 0x10]
push esi
push eax
push dword [ebx + 0x1c]
call fcn.0042c630
add esp, 0xc
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
test byte [ebx + 4], 0x20
mov eax, dword [ebx + 0x1c]
mov dword [esp + 0xc], eax
je 0x44a197
push dword [ebp + 8]
mov edx, dword [ebx + 0xc]
mov ecx, edi
call fcn.00449f90
movsx edx, word [ebx + 0x20]
add esp, 4
mov ecx, dword [ebx + 0x2c]
mov edi, eax
call fcn.00443d20
movsx eax, al
cmp eax, 0x41
jle 0x44a18e
push 0xffffffffffffffff
lea eax, [eax*2 + 0x5d9c04]
mov edx, 0x60
push eax
push 0
push 1
push edi
mov ecx, esi
call fcn.0042c990
add esp, 0x14
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
test eax, eax
jns 0x44a269
mov eax, dword [edi + 0x34]
test eax, eax
jns 0x44a264
movsx edx, word [ebx + 0x20]
mov ecx, dword [ebx + 0x2c]
mov dword [esp + 0xc], ecx
test edx, edx
jns 0x44a1c2
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.00454620
movsx ecx, ax
sub ecx, dword [edi + 0x34]
movzx eax, word [ebx + 0xe]
mov dword [esp + 0x2c], ecx
test al, 0x60
je 0x44a234
test eax, 0x100
je 0x44a201
push dword [ebx]
push str.generated_column_loop_on___s_
push edi
call fcn.00409a30
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 0x44a222
mov edx, dword [esp + 0xc]
push ecx
push ebx
mov ecx, edi
call fcn.00449570
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 0x44a22b
mov ebx, dword [ebp + 8]
mov edx, 0x51
push ebx
push ecx
mov ecx, esi
call fcn.0042c5c0
push ebx
mov edx, 0x57
mov ecx, esi
call fcn.0042c560
add esp, 0xc
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea ecx, [eax - 1]
jmp 0x44a28a
cmp dword [edi + 0x4c], 0
je 0x44a286
push dword [ebp + 8]
mov edx, ebx
mov ecx, edi
call fcn.00449e00
add esp, 4
test eax, eax
jne 0x44aed2
mov ecx, dword [esp + 0xc]
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.00449830
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.00449350
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.004467f0
mov ecx, dword [esp + 0x14]
mov edx, 0x47
push eax
call fcn.0042c5c0
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 + 0x10]
push esi
push 0
call fcn.004492a0
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.0042c780
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.00409700
lea edx, [esi + 2]
mov esi, dword [esp + 0x10]
lea edi, [eax - 1]
mov ecx, dword [esi]
push edi
call fcn.0040bf80
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.0042c990
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.0042c5c0
mov eax, dword [ebx + 8]
add esp, 8
cmp byte [eax + 1], 0
je 0x44a3b5
mov esi, dword [edi + 0xec]
mov ecx, esi
movsx edx, word [ebx + 0x20]
call fcn.0040c510
mov ecx, dword [esp + 0x10]
mov edx, eax
push 0xffffffffffffffff
mov dword [esi], 0
call fcn.0042d5a0
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.0044b2b0
mov ecx, dword [ebx + 8]
add esp, 4
xor edx, edx
call fcn.00455090
mov ecx, dword [esp + 0x10]
mov edx, 0x58
movsx eax, al
push eax
push esi
call fcn.0042c5c0
add esp, 8
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
xor eax, eax
mov dword [esp + 0x14], 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 + 0xc], eax
call fcn.00444470
mov ecx, edi
test eax, eax
je 0x44a44c
push dword [esp + 0x14]
push edx
push dword [ebp + 8]
mov edx, ebx
call fcn.004446b0
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 + 0xc]
lea eax, [esp + 0x18]
push eax
call fcn.0044b1e0
mov edx, dword [ebx + 0x10]
add esp, 4
mov dword [esp + 0x28], eax
mov ecx, edi
lea eax, [esp + 0x24]
push eax
call fcn.0044b1e0
add esp, 4
mov dword [esp + 0x2c], eax
mov edx, 0x47
mov ecx, esi
push dword [ebp + 8]
push 1
call fcn.0042c5c0
mov eax, dword [ebx + 4]
mov ecx, edi
mov edx, dword [esp + 0x14]
shr eax, 0xa
and eax, 1
push eax
push dword [esp + 0x20]
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.00444360
add esp, 0x24
mov ecx, esi
cmp dword [esp + 0x14], 0x80
jne 0x44a4dd
push dword [ebp + 8]
mov edx, 0x47
push 0
call fcn.0042c5c0
add esp, 8
jmp 0x44a69b
push dword [esp + 0x2c]
mov edx, 0x5c
push dword [ebp + 8]
push dword [esp + 0x30]
call fcn.0042c630
add esp, 0xc
jmp 0x44a69b
mov edx, dword [ebx + 0xc]
lea eax, [esp + 0x18]
push eax
mov ecx, edi
call fcn.0044b1e0
mov edx, dword [ebx + 0x10]
add esp, 4
mov esi, eax
mov ecx, edi
lea eax, [esp + 0x24]
push eax
call fcn.0044b1e0
mov ebx, dword [ebp + 8]
add esp, 4
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x10]
push ebx
push esi
push eax
call fcn.0042c630
add esp, 0xc
jmp 0x44a69e
mov edx, dword [ebx + 0xc]
mov al, byte [edx]
cmp al, 0x9b
jne 0x44a55d
mov ebx, dword [ebp + 8]
mov ecx, edi
push ebx
push 1
call fcn.00449350
add esp, 8
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp al, 0x99
jne 0x44a57d
mov ebx, dword [ebp + 8]
mov ecx, esi
mov edx, dword [edx + 8]
push ebx
push 1
call fcn.004492a0
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.0044b1e0
mov edx, dword [ebx + 0xc]
add esp, 4
mov esi, eax
mov ecx, edi
lea eax, [esp + 0x24]
push eax
call fcn.0044b1e0
mov ebx, dword [ebp + 8]
add esp, 4
mov ecx, dword [esp + 0x10]
mov edx, 0x6b
push ebx
push esi
push eax
call fcn.0042c630
add esp, 0xc
jmp 0x44a69e
mov edx, dword [ebx + 0xc]
lea eax, [esp + 0x18]
push eax
mov ecx, edi
call fcn.0044b1e0
mov ebx, dword [ebp + 8]
add esp, 4
mov edx, dword [esp + 0x1c]
mov ecx, esi
push ebx
push eax
call fcn.0042c5c0
add esp, 8
jmp 0x44a69e
mov edx, dword [ebx + 0xc]
lea eax, [esp + 0x18]
push eax
mov ecx, edi
call fcn.0044b1e0
mov ecx, dword [ebx + 0x10]
add esp, 4
mov edx, eax
call fcn.004467f0
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.0042c6a0
add esp, 0x10
jmp 0x44a69b
push dword [ebp + 8]
mov edx, 0x47
mov ecx, esi
push 1
call fcn.0042c5c0
mov edx, dword [ebx + 0xc]
lea eax, [esp + 0x20]
push eax
mov ecx, edi
call fcn.0044b1e0
mov edx, dword [esp + 0x28]
add esp, 0xc
mov ecx, esi
push eax
call fcn.0042c560
mov ecx, dword [esp + 0x14]
add esp, 4
mov edx, 0x47
mov esi, eax
push dword [ebp + 8]
push 0
call fcn.0042c5c0
mov ecx, dword [esp + 0x18]
add esp, 8
mov edx, esi
call fcn.0042d070
mov ebx, dword [ebp + 8]
mov ecx, dword [esp + 0x18]
test ecx, ecx
je 0x44a6ba
mov al, byte [edi + 0x13]
cmp al, 8
jae 0x44a6ba
movzx eax, al
mov dword [edi + eax*4 + 0xa4], ecx
inc byte [edi + 0x13]
mov ecx, dword [esp + 0x24]
test ecx, ecx
je 0x44aed0
mov al, byte [edi + 0x13]
cmp al, 8
jae 0x44aed0
movzx eax, al
mov dword [edi + eax*4 + 0xa4], 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 0x44a70e
movzx eax, word [ebx + 0x22]
test ax, ax
js 0x44a70e
movsx edx, ax
cmp edx, dword [ecx + 0x24]
jge 0x44a70e
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.00409a30
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 + 0xc], 0
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], 0
mov al, byte [ecx + 0x54]
mov byte [esp + 0x14], al
je 0x44a75c
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 0x44a786
mov ecx, ebx
call fcn.00446a40
test eax, eax
je 0x44a782
push 0xffffffffffffffff
mov edx, ebx
mov ecx, edi
call fcn.0044b000
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 0x44a795
mov eax, dword [eax]
jmp 0x44a797
xor eax, eax
mov edx, dword [ebx + 8]
push 0
push dword [esp + 0x18]
mov dword [esp + 0x24], eax
push eax
call fcn.0045b050
add esp, 0xc
mov dword [esp + 0x18], eax
test eax, eax
je 0x44a9b6
cmp dword [eax + 0x14], 0
jne 0x44a9b6
mov edx, dword [eax + 4]
test edx, 0x400000
je 0x44a7ef
mov ecx, dword [esp + 0x24]
test ecx, ecx
je 0x44a7ef
push dword [ebp + 8]
mov edx, ecx
mov ecx, edi
push dword [eax + 8]
call fcn.00449a60
add esp, 8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
test edx, 0x280000
je 0x44a804
push eax
mov edx, ebx
mov ecx, edi
call fcn.004452e0
add esp, 4
mov ecx, dword [esp + 0x1c]
xor eax, eax
mov dword [esp + 0x14], eax
test ecx, ecx
jle 0x44a875
mov esi, dword [esp + 0x24]
add esi, 8
xor ebx, ebx
nop dword [eax + eax]
cmp eax, 0x20
jge 0x44a837
mov ecx, dword [esi]
call fcn.00446a00
test eax, eax
mov eax, dword [esp + 0x14]
je 0x44a837
bts ebx, eax
mov ecx, dword [esp + 0x18]
test byte [ecx + 4], 0x20
je 0x44a859
cmp dword [esp + 0x2c], 0
jne 0x44a859
mov edx, dword [esi]
mov ecx, edi
call fcn.004440c0
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
inc eax
add esi, 0x14
mov dword [esp + 0x14], eax
cmp eax, ecx
jl 0x44a820
mov esi, dword [esp + 0x10]
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0x30]
mov edx, dword [esp + 0x24]
test edx, edx
je 0x44a8f7
cmp dword [esp + 0xc], 0
je 0x44a89d
mov eax, dword [edi + 0x2c]
lea esi, [eax + 1]
add eax, ecx
mov dword [esp + 0x14], esi
mov esi, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov dword [edi + 0x2c], eax
jmp 0x44a8b0
mov edx, ecx
mov ecx, edi
call fcn.0044d170
mov edx, dword [esp + 0x24]
mov ecx, eax
mov dword [esp + 0x14], ecx
mov eax, dword [esp + 0x18]
test byte [eax + 4], 0xc0
je 0x44a8e2
mov ebx, dword [edx + 8]
mov bl, byte [ebx]
mov byte [esp + 0x23], bl
cmp bl, 0xa7
mov ebx, dword [esp + 0x30]
je 0x44a8d3
cmp byte [esp + 0x23], 0xa9
jne 0x44a8e2
mov esi, dword [edx + 8]
mov al, byte [eax + 4]
and al, 0xc0
mov byte [esi + 2], al
mov esi, dword [esp + 0x10]
push 2
push 0
push ecx
mov ecx, edi
call fcn.0044b420
mov edx, dword [esp + 0x30]
add esp, 0xc
jmp 0x44a8ff
mov dword [esp + 0x14], 0
mov eax, dword [esp + 0x1c]
cmp eax, 2
jl 0x44a92b
test dword [ebx + 4], 0x100
je 0x44a92b
push dword [edx + 0x1c]
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x2c]
push eax
call fcn.004835b0
add esp, 8
mov dword [esp + 0x18], eax
jmp 0x44a938
test eax, eax
jle 0x44a934
push dword [edx + 8]
jmp 0x44a914
mov eax, dword [esp + 0x18]
test byte [eax + 4], 0x20
je 0x44a965
mov eax, dword [esp + 0x2c]
test eax, eax
jne 0x44a94d
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.0042c990
add esp, 0x14
movzx eax, byte [ebx + 2]
mov ecx, edi
mov ebx, dword [ebp + 8]
mov esi, dword [esp + 0xc]
mov edx, esi
push eax
push dword [esp + 0x1c]
push dword [esp + 0x24]
push ebx
push dword [esp + 0x24]
call fcn.0042ca10
mov eax, dword [esp + 0x30]
add esp, 0x14
test eax, eax
je 0x44aed0
test esi, esi
jne 0x44aed0
mov edx, dword [esp + 0x14]
mov ecx, edi
push eax
call fcn.0044d1d0
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.00409a30
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 0x44a1f8
cmp edx, 0x8a
jne 0x44aa22
test dword [ebx + 4], 0x1000
je 0x44aa22
mov eax, dword [ebx + 0x14]
mov eax, dword [eax + 0x1c]
mov eax, dword [eax]
cmp eax, 1
je 0x44aa22
cmp dword [edi + 0x24], 0
jne 0x44aeaf
push 1
push eax
push str.sub_select_returns__d_columns___expected__d
push edi
call fcn.00409a30
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.004481f0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [ebx + 0xc]
cmp dword [esi + 0x1c], 0
je 0x44aa43
mov al, byte [edi + 0x1a]
cmp al, byte [esi + 2]
jbe 0x44aa55
mov edx, esi
mov ecx, edi
call fcn.004481f0
mov dword [esi + 0x1c], eax
mov al, byte [edi + 0x1a]
mov byte [esi + 2], al
mov ecx, esi
call fcn.004444b0
mov ecx, dword [ebx + 0x1c]
cmp ecx, eax
je 0x44aa73
push eax
push ecx
push str._d_columns_assigned__d_values
push edi
call fcn.00409a30
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 + 0xc]
dec esi
push dword [ebp + 8]
mov ecx, dword [esp + 0x14]
push 0
lea edi, [esi - 1]
mov dword [eax + 0x38], edi
call fcn.0042c5c0
mov ecx, dword [esp + 0x14]
mov edx, ebx
push edi
push esi
call fcn.00448550
mov ebx, dword [ebp + 8]
mov edx, 0x47
mov ecx, dword [esp + 0x20]
push ebx
push 1
call fcn.0042c5c0
mov edx, esi
mov esi, dword [esp + 0x28]
mov ecx, esi
call fcn.0042cd80
push 0
push ebx
mov edx, 0x56
mov ecx, esi
call fcn.0042c5c0
add esp, 0x20
mov edx, edi
mov ecx, esi
call fcn.0042cd80
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.0044b630
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 + 0x10], eax
call fcn.00454620
movsx ecx, ax
mov edx, 0x9d
mov eax, dword [esp + 0x10]
inc ecx
movsx eax, word [eax + 0x22]
inc eax
imul eax, dword [ebx + 0x1c]
add eax, ecx
mov ecx, esi
push eax
call fcn.0042c5c0
add esp, 8
test edi, edi
js 0x44aeaf
mov eax, dword [esp + 0xc]
add edi, edi
mov eax, dword [eax + 4]
cmp byte [eax + edi*8 + 8], 0x45
jne 0x44aeaf
push dword [ebp + 8]
mov edx, 0x57
mov ecx, esi
call fcn.0042c560
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.00409a30
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 0x44abf8
cmp byte [edx], 0
jne 0x44abc2
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 0x44abf8
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.0042c630
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.0042c630
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.0044b2b0
mov al, byte [esp + 0x27]
add esp, 4
mov ecx, dword [esp + 0x10]
mov edx, esi
mov byte [edi + 0x17], al
call fcn.0042d070
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 + 0xc], 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 + 0x10], ecx
mov dword [esp + 0x14], ebx
test ebx, ebx
je 0x44ad01
mov ecx, dword [esp + 0x2c]
push edx
push edx
mov edx, ebx
call fcn.004456b0
mov ebx, eax
add esp, 8
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x1c], ebx
cmp byte [eax + 0x57], 0
je 0x44acbd
test ebx, ebx
je 0x44aeaf
mov edx, ebx
mov ecx, eax
call fcn.004454a0
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.00449960
add esp, 4
mov edx, eax
mov ecx, ebx
call fcn.00449920
push 0x34
lea eax, [esp + 0x3c]
push 0
push eax
call fcn.0056a7a0
mov eax, dword [esp + 0x34]
lea edx, [esp + 0x44]
mov dword [esp + 0x50], ebx
add esp, 0xc
mov ebx, dword [esp + 0x14]
mov byte [esp + 0x38], 0x35
mov dword [esp + 0xc], edx
mov ecx, dword [esp + 0x24]
dec ecx
test ecx, ecx
jle 0x44ad94
dec ecx
shr ecx, 1
inc ecx
mov dword [esp + 0x30], ecx
test ebx, ebx
je 0x44ad22
mov eax, dword [eax]
mov dword [esp + 0x48], eax
jmp 0x44ad28
mov edx, dword [eax]
mov dword [esp + 0xc], edx
dec dword [edi + 0x38]
mov ebx, dword [edi + 0x38]
push 0x10
push ebx
push edx
push edi
call fcn.0044bb60
mov edx, dword [esp + 0x38]
mov ecx, edi
push dword [ebp + 8]
mov edx, dword [edx + 0x14]
call fcn.0044b2b0
mov edx, dword [esp + 0x24]
add esp, 0x14
mov ecx, esi
call fcn.0042c710
mov ecx, dword [esi + 0xc]
not ebx
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x44ad71
push ebx
mov edx, esi
call fcn.0042ccd0
add esp, 4
jmp 0x44ad7a
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 + 0xc]
add eax, 0x28
sub dword [esp + 0x30], 1
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x28], eax
jne 0x44ad16
mov eax, dword [esp + 0x24]
push dword [ebp + 8]
test al, 1
je 0x44adb6
lea edx, [eax + eax*4]
mov ecx, edi
mov eax, dword [esp + 0x38]
mov edx, dword [eax + edx*4 - 0xc]
call fcn.0044b2b0
add esp, 4
jmp 0x44adc7
push 0
mov edx, 0x4b
mov ecx, esi
call fcn.0042c5c0
add esp, 8
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x44adda
mov ecx, dword [esp + 0x2c]
mov edx, eax
call fcn.004454a0
mov ecx, esi
call fcn.00449a20
mov ecx, dword [esi + 0xc]
mov edx, dword [esp + 0x10]
not edx
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x44ae09
push edx
mov edx, esi
call fcn.0042ccd0
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 + 0x84], 0
jne 0x44ae44
cmp byte [edi + 0x12], 0
jne 0x44ae44
push str.RAISE___may_only_be_used_within_a_trigger_program
push edi
call fcn.00409a30
add esp, 8
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp byte [ebx + 1], 2
jne 0x44ae5b
mov eax, dword [edi + 0x80]
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 0x44ae88
push dword [ebx + 8]
mov edx, 0x46
mov ecx, esi
push 0
push 4
push 0
call fcn.0042c990
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 + 0x84], 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.0045a160
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.0042c5c0
add esp, 8
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret