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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x8c
mov eax, dword [ebp + 8]
push ebx
push esi
mov esi, dword [eax + 8]
xor eax, eax
push edi
mov edi, dword [ebp + 0x10]
mov dword [esp + 0x2c], esi
mov dword [esp + 0x14], edi
mov dword [esp + 0x1c], eax
mov dword [esp + 0x34], eax
mov dword [esp + 0xc], eax
cmp esi, eax
jne 0x42f650
xor eax, eax
jmp 0x4301f5
mov ebx, dword [ebp + 0xc]
mov ecx, 0x8d
test ebx, ebx
je 0x42fa78
movzx edx, byte [ebx]
cmp edx, ecx
mov dword [esp + 0x10], edx
jg 0x42f6af
je 0x42fa8e
cmp edx, 0x39
jle 0x42f6c8
cmp edx, 0x67
jg 0x42fa27
je 0x42fa01
cmp edx, 0x47
je 0x42f99b
cmp edx, 0x4d
je 0x42f942
cmp edx, 0x5b
jle case.0x42f6c1.145
cmp edx, 0x65
jle 0x42f904
cmp edx, 0x66
jne case.0x42f6c1.145
mov ebx, dword [ebx + 0xc]
jmp 0x42f658
lea eax, [edx - 0x8e]
cmp eax, 0x1b
ja case.0x42f6c1.145
movzx eax, byte [eax + 0x430243]
jmp dword [eax*4 + 0x4301ff]
cmp edx, 0x34
jge 0x42fc6c
cmp edx, 0x2d
jg 0x42f817
je case.0x42f6c1.156
cmp edx, 0x13
je 0x42fa01
cmp edx, 0x14
je 0x42fa3a
cmp edx, 0x24
je 0x42f7cf
cmp edx, 0x2a
jle case.0x42f6c1.145
cmp edx, 0x2c
jle 0x42f904
mov edi, dword [ebx + 0x14]
mov eax, dword [edi]
and dword [esp + 0xc], 0
mov dword [esp + 0x28], eax
mov eax, esi
mov dword [esp + 0x18], edi
call fcn.0041f4e7
mov ebx, dword [ebx + 0xc]
mov dword [esp + 0x10], eax
mov dword [esp + 0x30], ebx
test ebx, ebx
je 0x42f79d
push 0xc
pop ecx
lea eax, [esp + 0x38]
mov esi, ebx
lea edi, [esp + 0x38]
rep movsd dword es:[edi], dword [esi]
mov esi, dword [ebp + 8]
push eax
lea eax, [esp + 0x20]
call fcn.0042f59b
and dword [esp + 0x40], 0xffffefff
pop ecx
mov cl, byte [esp + 0x38]
push 0x30
mov dword [esp + 0x58], eax
lea eax, [esp + 0x6c]
push 0
push eax
mov byte [esp + 0x6a], cl
mov byte [esp + 0x44], 0xa4
call fcn.0055bfc0
mov edi, dword [esp + 0x24]
mov esi, dword [esp + 0x38]
lea eax, [esp + 0x44]
mov dword [esp + 0x80], eax
lea eax, [esp + 0x74]
add esp, 0xc
and dword [esp + 0x1c], 0
mov byte [esp + 0x68], 0x35
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x28]
lea ecx, [eax - 1]
test ecx, ecx
jle 0x4301a9
lea eax, [ecx - 1]
shr eax, 1
inc eax
lea ebx, [edi + 4]
mov dword [esp + 0x2c], eax
cmp dword [esp + 0x30], 0
mov eax, dword [ebx]
je 0x430152
mov dword [esp + 0x78], eax
jmp 0x430156
push edi
push dword [ebx + 0xc]
push dword [ebp + 8]
call fcn.0042f617
add esp, 0xc
mov dword [esp + 0x14], eax
cmp eax, edi
je 0x42f7f7
push edi
push eax
push 0x4f
push esi
call fcn.0041f2c0
add esp, 0x10
mov dword [esp + 0x14], edi
mov edx, dword [ebx + 8]
push 0
call fcn.0043558f
pop ecx
movsx eax, al
push eax
push edi
push 0x55
push esi
call fcn.0041f2c0
add esp, 0x10
jmp 0x4301f1
cmp edx, 0x30
je 0x42f8f2
cmp edx, 0x31
je 0x42f888
jle case.0x42f6c1.145
cmp edx, 0x33
jg case.0x42f6c1.145
push edi
push 1
push 0x46
push esi
call fcn.0041f2c0
push dword [ebx + 0xc]
mov eax, dword [ebp + 8]
lea edi, [esp + 0x30]
call fcn.00430303
add esp, 0x14
push eax
push dword [esp + 0x14]
push esi
call fcn.0041f2a7
add esp, 0xc
push dword [ebp + 0x10]
mov edi, eax
push 0
push 0x46
push esi
call fcn.0041f2c0
add esp, 0x10
mov eax, edi
mov ecx, esi
call fcn.0041f982
mov ecx, dword [esi + 0x88]
mov dword [eax + 8], ecx
jmp 0x4301dc
mov eax, esi
call fcn.0041f4e7
mov dword [esp + 0x34], eax
mov eax, esi
call fcn.0041f4e7
push edi
push 0
push 0x49
push esi
mov dword [esp + 0x1c], eax
call fcn.0041f2c0
push dword [esp + 0x1c]
mov eax, ebx
push dword [esp + 0x48]
push dword [ebp + 8]
call fcn.0042ef72
add esp, 0x1c
push edi
push 1
push 0x46
push esi
call fcn.0041f2c0
mov edx, dword [esp + 0x44]
mov ecx, esi
call fcn.0041f52a
push 0
push edi
push 0x53
push esi
call fcn.0041f2c0
mov edx, dword [esp + 0x2c]
add esp, 0x20
mov ecx, esi
call fcn.0041f52a
jmp 0x42fad0
push 0
push 0
push edi
push dword [ebp + 8]
call fcn.0043059b
jmp 0x42fbc0
push dword [ebx + 0xc]
mov eax, dword [ebp + 8]
lea edi, [esp + 0x20]
call fcn.00430303
pop ecx
push dword [ebx + 0x10]
mov dword [esp + 0x1c], eax
mov eax, dword [ebp + 8]
lea edi, [esp + 0x38]
call fcn.00430303
pop ecx
push dword [ebp + 0x10]
push dword [esp + 0x1c]
push eax
push dword [esp + 0x1c]
push esi
call fcn.0041f228
add esp, 0x14
jmp 0x4301dc
mov eax, dword [ebx + 0x2c]
movsx ecx, word [ebx + 0x20]
mov dword [esp + 0xc], eax
movsx eax, word [eax + 0x2a]
inc eax
imul eax, dword [ebx + 0x1c]
push edi
lea eax, [eax + ecx + 1]
push eax
push 0x96
push esi
call fcn.0041f2c0
movzx eax, word [ebx + 0x20]
add esp, 0x10
test ax, ax
jl 0x4301dc
mov ecx, dword [esp + 0xc]
mov ecx, dword [ecx + 4]
cwde
shl eax, 4
cmp byte [eax + ecx + 0xd], 0x45
jne 0x4301dc
push edi
push 0x54
push esi
call fcn.0041f2a7
jmp 0x42fa5b
mov eax, dword [ebp + 8]
cmp dword [eax + 0x78], 0
jne 0x42f9b6
push str.RAISE___may_only_be_used_within_a_trigger_program
mov edi, eax
call fcn.0040b095
pop ecx
jmp 0x42f649
cmp byte [ebx + 1], 2
jne 0x42f9c3
mov ecx, eax
call fcn.00438900
mov al, byte [ebx + 1]
cmp al, 4
jne 0x42f9e4
xor eax, eax
push eax
push dword [ebx + 8]
push eax
push 4
push eax
push 0x45
push esi
call fcn.0041f38f
add esp, 0x1c
jmp 0x4301dc
push 0
push 0
push dword [ebx + 8]
movsx eax, al
push eax
push 0x713
push dword [ebp + 8]
call fcn.0043890e
jmp 0x42fcd2
push dword [ebx + 0xc]
mov eax, dword [ebp + 8]
lea edi, [esp + 0x20]
call fcn.00430303
pop ecx
push dword [ebp + 0x10]
push eax
push dword [esp + 0x18]
push esi
call fcn.0041f2c0
add esp, 0x10
jmp 0x4301dc
cmp edx, 0x6a
je 0x42fa82
cmp edx, 0x6e
je 0x42fa78
cmp edx, 0x7f
jne case.0x42f6c1.145
cmp edx, 0x7f
jne 0x42fa63
mov eax, dword [ebx + 0x14]
mov eax, dword [eax]
mov eax, dword [eax]
cmp eax, 1
je 0x42fa63
mov edi, dword [ebp + 8]
push 1
push eax
push str.sub_select_returns__d_columns___expected__d
call fcn.0040b095
add esp, 0xc
jmp 0x4301dc
push 0
push 0
push ebx
push dword [ebp + 8]
call fcn.0042eaa6
add esp, 0x10
jmp 0x4301f5
push edi
push 0
push 0x49
jmp 0x42fbba
push dword [ebx + 8]
push edi
push esi
call fcn.0041f2f2
jmp 0x42fa99
push edi
push 0
push dword [ebx + 8]
call fcn.0042f3b3
add esp, 0xc
jmp 0x42fad0
movsx eax, word [ebx + 0x22]
mov ecx, dword [ebx + 0x28]
imul eax, eax, 0x18
add eax, dword [ecx + 0x1c]
cmp byte [ecx], 0
jne 0x42fab8
mov eax, dword [eax + 0x10]
jmp 0x4301f5
cmp byte [ecx + 1], 0
je case.0x42f6c1.158
push edi
push dword [eax + 0xc]
push dword [ecx + 8]
push 0x5a
push esi
call fcn.0041f228
add esp, 0x14
mov eax, edi
jmp 0x4301f5
test byte [ebx + 4], 8
mov ecx, dword [ebx + 0x1c]
je 0x42fb47
push edi
push dword [ebx + 0xc]
push dword [ebp + 8]
call fcn.0042f617
mov ecx, dword [ebx + 0x2c]
mov dword [esp + 0x20], eax
movsx eax, word [ebx + 0x20]
add esp, 0xc
call fcn.0042ca45
movsx ebx, al
cmp ebx, 0x41
je 0x4301f1
cmp dword [esp + 0x14], edi
je 0x42fb25
push edi
push dword [esp + 0x18]
push 0x4f
push esi
call fcn.0041f2c0
add esp, 0x10
mov dword [esp + 0x14], edi
push 0xffffffffffffffff
lea eax, [ebx*2 + 0x5d6df8]
push eax
push 0
push 1
push dword [esp + 0x24]
push 0x5b
push esi
call fcn.0041f38f
add esp, 0x1c
jmp 0x4301f1
test ecx, ecx
jge 0x42fb61
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x38]
test ecx, ecx
jge 0x42fb60
movsx eax, word [ebx + 0x20]
sub eax, ecx
jmp 0x4301f5
dec ecx
mov al, byte [ebx + 0x26]
push edi
mov byte [esp + 0x28], al
movsx eax, word [ebx + 0x20]
push ecx
mov ecx, dword [ebx + 0x2c]
push esi
call fcn.0042f4e1
add esp, 0xc
cmp byte [esp + 0x24], 0
je 0x42fad0
movzx dx, byte [esp + 0x24]
mov ecx, esi
call fcn.0041f708
jmp 0x42fad0
xor ecx, ecx
mov eax, ebx
push edi
push dword [ebp + 8]
call fcn.0042f3fe
pop ecx
pop ecx
jmp 0x42fad0
mov eax, dword [ebx + 8]
xor ecx, ecx
cmp byte [eax + 4], cl
push edi
sete cl
push ecx
push 0x46
push esi
call fcn.0041f2c0
add esp, 0x10
jmp 0x42fad0
mov edi, dword [ebx + 8]
inc edi
inc edi
mov eax, edi
call fcn.0040af81
mov ecx, dword [esi]
mov ebx, eax
dec ebx
push ebx
call fcn.0040bca9
pop ecx
push 0xfffffffffffffff9
push eax
mov eax, ebx
cdq
push 0
push dword [ebp + 0x10]
sub eax, edx
sar eax, 1
push eax
push 0x4b
push esi
call fcn.0041f38f
add esp, 0x1c
mov eax, dword [ebp + 0x10]
jmp 0x4301f5
movsx eax, word [ebx + 0x20]
push edi
push eax
push 0x4c
push esi
call fcn.0041f2c0
mov eax, dword [ebx + 8]
add esp, 0x10
cmp byte [eax + 1], 0
je 0x42fad0
mov eax, dword [ebp + 8]
mov edx, dword [eax + 0xd4]
movsx eax, word [ebx + 0x20]
push eax
call fcn.0040c0bb
and dword [edx], 0
pop ecx
mov ecx, eax
mov edx, ecx
or eax, 0xffffffff
mov ecx, esi
call fcn.0041f93d
jmp 0x42fad0
mov eax, dword [ebx + 0x1c]
jmp 0x4301f5
xor eax, eax
cmp edx, 0x2d
sete al
mov dword [esp + 0xc], 0x80
add eax, 0x34
mov edx, eax
mov dword [esp + 0x10], edx
mov esi, dword [ebx + 0xc]
mov ecx, esi
call fcn.0042cdfb
cmp eax, 1
jle 0x42fc90
push dword [esp + 0xc]
mov ecx, dword [ebp + 8]
push edx
push edi
mov eax, ebx
call fcn.0042cee1
jmp 0x42fa5b
mov eax, dword [ebp + 8]
push esi
lea edi, [esp + 0x20]
call fcn.00430303
pop ecx
push dword [ebx + 0x10]
mov dword [esp + 0x1c], eax
mov eax, dword [ebp + 8]
lea edi, [esp + 0x38]
call fcn.00430303
pop ecx
mov ecx, dword [esp + 0xc]
or ecx, 0x20
push ecx
push dword [ebp + 0x10]
mov ecx, dword [ebp + 8]
push eax
push dword [esp + 0x24]
mov eax, dword [ebx + 0x10]
push dword [esp + 0x20]
push esi
call fcn.0042cd9e
add esp, 0x18
jmp 0x4301dc
mov eax, dword [ebx + 0xc]
mov dl, byte [eax]
cmp dl, 0x8f
jne 0x42fcec
xor ecx, ecx
inc ecx
jmp 0x42fb9b
cmp dl, cl
jne 0x42fcfb
push edi
push 1
push dword [eax + 8]
jmp 0x42fa94
and dword [esp + 0x40], 0
lea eax, [esp + 0x38]
push eax
mov eax, dword [ebp + 8]
lea edi, [esp + 0x20]
mov byte [esp + 0x3c], 0x8f
mov dword [esp + 0x40], 0x4400
call fcn.00430303
pop ecx
push dword [ebx + 0xc]
mov dword [esp + 0x1c], eax
mov eax, dword [ebp + 8]
lea edi, [esp + 0x38]
call fcn.00430303
pop ecx
push dword [ebp + 0x10]
push dword [esp + 0x1c]
push eax
push 0x61
jmp 0x42f934
push dword [ebx + 0xc]
mov eax, dword [ebp + 8]
lea edi, [esp + 0x20]
call fcn.00430303
mov esi, eax
mov eax, dword [ebx + 0x10]
mov eax, dword [eax + 8]
pop ecx
xor ecx, ecx
cmp byte [eax + 4], cl
sete cl
xor eax, eax
cmp byte [ebx + 0x26], 0x2d
sete al
xor eax, ecx
push eax
xor eax, eax
test ecx, ecx
sete al
push eax
push dword [ebp + 0x10]
push esi
mov esi, dword [esp + 0x3c]
push 0x58
call fcn.0041f495
jmp 0x42f93a
mov eax, dword [ebx + 0x28]
test eax, eax
jne 0x42fda8
push dword [ebx + 8]
push str.misuse_of_aggregate:__s__
mov edi, dword [ebp + 8]
call fcn.0040b095
pop ecx
pop ecx
jmp 0x4301dc
movsx ecx, word [ebx + 0x22]
mov eax, dword [eax + 0x28]
shl ecx, 4
mov eax, dword [ecx + eax + 8]
jmp 0x4301f5
mov ecx, dword [ebp + 8]
mov eax, dword [ecx]
and dword [esp + 0x30], 0
and dword [esp + 0x28], 0
test dword [ebx + 4], 0x1000000
mov dword [esp + 0xc], eax
mov al, byte [eax + 0x4e]
mov byte [esp + 0x10], al
je 0x42fde9
mov eax, dword [ebx + 0x2c]
mov eax, dword [eax + 0x2c]
jmp 0x4301f5
cmp byte [ecx + 0x17], 0
je 0x42fe0c
push ebx
call fcn.0042e2e4
pop ecx
test eax, eax
je 0x42fe0c
mov esi, dword [ebp + 8]
push 0xffffffffffffffff
push ebx
call fcn.0043025f
pop ecx
pop ecx
jmp 0x4301f5
test dword [ebx + 4], 0x4000
je 0x42feb8
xor edi, edi
and dword [esp + 0x20], 0
mov eax, dword [ebx + 8]
push 0
push dword [esp + 0x14]
mov dword [esp + 0x20], eax
push dword [esp + 0x28]
push eax
push dword [esp + 0x1c]
call fcn.0043918d
add esp, 0x14
mov dword [esp + 0x10], eax
test eax, eax
je 0x430091
xor ecx, ecx
cmp dword [eax + 0x14], ecx
jne 0x430091
mov eax, dword [eax + 4]
test eax, 0x200
je 0x42fece
mov eax, esi
call fcn.0041f4e7
push dword [ebp + 0x10]
mov dword [esp + 0x10], eax
push dword [edi + 4]
push dword [ebp + 8]
call fcn.00430374
mov eax, dword [esp + 0x2c]
add esp, 0xc
cmp eax, 1
jle 0x42feaf
add edi, 0x1c
lea ebx, [eax - 1]
push dword [esp + 0xc]
push dword [ebp + 0x10]
push 0x33
push esi
call fcn.0041f2c0
push dword [ebp + 0x10]
push dword [edi]
push dword [ebp + 8]
call fcn.00430374
add esp, 0x1c
add edi, 0x18
dec ebx
jne 0x42fe8a
mov edx, dword [esp + 0xc]
jmp 0x4301d5
mov edi, dword [ebx + 0x14]
test edi, edi
je 0x42fe1b
mov eax, dword [edi]
mov dword [esp + 0x20], eax
jmp 0x42fe20
test eax, 0x400
je 0x42feeb
push dword [ebp + 0x10]
push dword [edi + 4]
push dword [ebp + 8]
call fcn.0042f617
add esp, 0xc
jmp 0x4301f5
cmp dword [esp + 0x20], ecx
mov dword [esp + 0x14], ecx
jle 0x42ff57
lea eax, [edi + 4]
mov dword [esp + 0x1c], eax
cmp dword [esp + 0x14], 0x20
jge 0x42ff20
mov eax, dword [esp + 0x1c]
push dword [eax]
call fcn.0042e2d3
pop ecx
test eax, eax
je 0x42ff20
mov ecx, dword [esp + 0x14]
xor eax, eax
inc eax
shl eax, cl
or dword [esp + 0x30], eax
mov eax, dword [esp + 0x10]
test byte [eax + 4], 0x20
je 0x42ff44
cmp dword [esp + 0x28], 0
jne 0x42ff44
mov eax, dword [esp + 0x1c]
push dword [ebp + 8]
mov ecx, dword [eax]
call fcn.0042cb5f
pop ecx
mov dword [esp + 0x28], eax
inc dword [esp + 0x14]
mov eax, dword [esp + 0x14]
add dword [esp + 0x1c], 0x18
cmp eax, dword [esp + 0x20]
jl 0x42fefc
test edi, edi
je 0x42ffc7
cmp dword [esp + 0x30], 0
je 0x42ff7a
mov ecx, dword [ebp + 8]
mov eax, dword [ecx + 0x2c]
lea edx, [eax + 1]
mov dword [esp + 0x18], edx
mov edx, dword [esp + 0x20]
add eax, edx
mov dword [ecx + 0x2c], eax
jmp 0x42ff8e
mov esi, dword [esp + 0x20]
mov eax, dword [ebp + 8]
call fcn.0043141b
mov esi, dword [esp + 0x2c]
mov dword [esp + 0x18], eax
mov edx, dword [esp + 0x10]
test byte [edx + 4], 0xc0
je 0x42ffb0
mov eax, dword [edi + 4]
mov cl, byte [eax]
cmp cl, 0x9e
je 0x42ffa7
cmp cl, 0xa0
jne 0x42ffb0
mov cl, byte [edx + 4]
and cl, 0xc0
mov byte [eax + 0x26], cl
mov ecx, dword [ebp + 8]
push 3
push 0
push dword [esp + 0x20]
mov eax, edi
call fcn.0043047d
add esp, 0xc
jmp 0x42ffcc
and dword [esp + 0x18], 0
cmp dword [esp + 0x20], 2
jl 0x42ffde
test byte [ebx + 4], 0x80
je 0x42ffde
mov eax, dword [edi + 0x1c]
jmp 0x42ffe8
cmp dword [esp + 0x20], 0
jle 0x430000
mov eax, dword [edi + 4]
push dword [esp + 0x20]
push dword [esp + 0x14]
push dword [esp + 0x14]
call fcn.0044d0cc
mov dword [esp + 0x1c], eax
add esp, 0xc
mov eax, dword [esp + 0x10]
test byte [eax + 4], 0x20
je 0x430032
cmp dword [esp + 0x28], 0
jne 0x43001c
mov eax, dword [esp + 0xc]
mov eax, dword [eax + 8]
mov dword [esp + 0x28], eax
push 0xfffffffffffffffe
push dword [esp + 0x2c]
xor eax, eax
push eax
push eax
push eax
push 0x52
push esi
call fcn.0041f38f
add esp, 0x1c
mov edi, dword [ebp + 8]
mov eax, dword [edi + 0x38]
push 0xfffffffffffffff8
push dword [esp + 0x14]
neg eax
push dword [ebp + 0x10]
sbb eax, eax
push dword [esp + 0x24]
add eax, 0x3f
push dword [esp + 0x40]
push eax
push esi
call fcn.0041f38f
movzx dx, byte [esp + 0x3c]
add esp, 0x1c
mov ecx, esi
call fcn.0041f708
cmp dword [esp + 0x20], 0
je 0x42fbfb
cmp dword [esp + 0x30], 0
jne 0x42fbfb
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x18]
mov eax, edi
call fcn.0043144c
jmp 0x42fbfb
push dword [esp + 0x18]
push str.unknown_function:__s__
jmp 0x42fd99
mov eax, dword [ebx + 0xc]
cmp dword [eax + 0x1c], 0
jne 0x4300be
push 0
push 0
push eax
push dword [ebp + 8]
call fcn.0042eaa6
mov ecx, dword [ebx + 0xc]
add esp, 0x10
mov dword [ecx + 0x1c], eax
mov edx, dword [ebx + 0x1c]
test edx, edx
je 0x4300e3
mov ecx, dword [ebx + 0xc]
call fcn.0042cdfb
cmp edx, eax
je 0x4300e3
mov edi, dword [ebp + 8]
push eax
push edx
push str._d_columns_assigned__d_values
call fcn.0040b095
add esp, 0xc
movsx eax, word [ebx + 0x20]
mov ecx, dword [ebx + 0xc]
add eax, dword [ecx + 0x1c]
jmp 0x4301f5
mov edi, dword [ebp + 8]
push str.row_value_misused
call fcn.0040b095
jmp 0x42fda2
push dword [ebx + 0x1c]
push 0x15
push esi
call fcn.0041f2a7
add esp, 0xc
push edi
push dword [ebx + 0xc]
mov dword [esp + 0x14], eax
push dword [ebp + 8]
call fcn.0042f617
mov edi, eax
mov eax, dword [esp + 0x18]
add esp, 0xc
mov ecx, esi
mov dword [esp + 0x14], edi
call fcn.0041f982
mov ecx, dword [esi + 0x88]
mov dword [eax + 8], ecx
mov eax, dword [esp + 0xc]
mov ecx, esi
call fcn.0041f982
mov dword [eax + 0xc], edi
jmp 0x4301dc
mov dword [esp + 0xc], eax
mov eax, esi
call fcn.0041f4e7
push 0x10
push eax
push dword [esp + 0x14]
mov dword [esp + 0x24], eax
push dword [ebp + 8]
call fcn.004308fc
push dword [ebp + 0x10]
push dword [ebx + 0x18]
push dword [ebp + 8]
call fcn.00430374
add esp, 0x1c
push dword [esp + 0x10]
push esi
call fcn.0041f2db
mov edx, dword [esp + 0x20]
pop ecx
pop ecx
mov ecx, esi
call fcn.0041f52a
add ebx, 0x30
dec dword [esp + 0x2c]
jne 0x42f7b9
mov eax, dword [esp + 0x28]
push dword [ebp + 0x10]
test al, 1
je 0x4301c4
imul eax, eax, 0x18
push dword [eax + edi - 0x14]
push dword [ebp + 8]
call fcn.00430374
add esp, 0xc
jmp 0x4301d1
push 0
push 0x49
push esi
call fcn.0041f2c0
add esp, 0x10
mov edx, dword [esp + 0x10]
mov ecx, esi
call fcn.0041f52a
mov edx, dword [esp + 0x1c]
mov eax, dword [ebp + 8]
call fcn.00431401
mov edx, dword [esp + 0x34]
call fcn.00431401
mov eax, dword [esp + 0x14]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret