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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xa4
push ebx
mov ebx, ecx
mov dword [esp + 0x64], edx
xor eax, eax
mov dword [esp + 0x14], ebx
push esi
xor esi, esi
mov dword [esp + 0xc], eax
xorps xmm0, xmm0
mov eax, dword [ebx]
push edi
mov dword [esp + 0x28], 0
mov dword [esp + 0x78], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0x58], esi
mov dword [esp + 0x4c], esi
mov dword [esp + 0x30], esi
mov dword [esp + 0x68], esi
mov dword [esp + 0x50], esi
mov dword [esp + 0x40], esi
movlpd qword [esp + 0x70], xmm0
mov dword [esp + 0x5c], eax
cmp dword [ebx + 0x24], esi
jne 0x1007ac54
call fcn.10079610
mov edi, eax
mov dword [esp + 0x20], edi
test edi, edi
je 0x1007ac54
cmp dword [edi + 0x38], esi
jne 0x10079b32
mov eax, dword [ebx]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + 0x1c]
test eax, eax
je 0x10079b3b
cmp dword [eax + 0x30], esi
je 0x10079b3b
cmp byte [ebx + 0x9f], 0
je 0x10079b4e
mov al, byte [edi + 0x2b]
xor esi, esi
mov dword [esp + 0x64], esi
mov byte [esp + 0xf], al
mov byte [esp + 0x27], al
jmp 0x10079b78
push 0
push 0
push 0x80
mov edx, edi
mov ecx, ebx
call fcn.100a4a30
mov esi, eax
add esp, 0xc
mov al, byte [edi + 0x2b]
mov dword [esp + 0x64], esi
mov byte [esp + 0xf], al
mov byte [esp + 0x27], al
test esi, esi
jne 0x10079b94
push 0
push 0
mov edx, edi
mov ecx, ebx
call fcn.100825a0
add esp, 8
mov dword [esp + 0x34], 0
test eax, eax
je 0x10079b9c
mov dword [esp + 0x34], 1
cmp byte [edi + 0x2b], 1
je 0x10079ba9
cmp word [edi + 0x22], 0
jg 0x10079bba
mov edx, edi
mov ecx, ebx
call fcn.10073b70
test eax, eax
jne 0x1007ac52
xor eax, eax
mov edx, edi
test esi, esi
mov ecx, ebx
setne al
push eax
call fcn.10079780
add esp, 4
test eax, eax
jne 0x1007ac52
mov ecx, dword [edi + 0x3c]
mov esi, 0xffff8000
mov edx, dword [esp + 0x5c]
test ecx, ecx
je 0x10079bfa
mov eax, dword [edx + 0x10]
xor esi, esi
add eax, 0xc
cmp dword [eax], ecx
je 0x10079bfa
lea eax, [eax + 0x10]
inc esi
cmp dword [eax], ecx
jne 0x10079bf2
mov eax, dword [edx + 0x10]
mov ecx, esi
shl ecx, 4
mov edx, 9
mov dword [esp + 0x18], ecx
push dword [eax + ecx]
mov ecx, ebx
push 0
push dword [edi]
call fcn.1006e5a0
add esp, 0xc
mov dword [esp + 0x38], eax
cmp eax, 1
je 0x1007ac52
mov ecx, dword [esp + 0x6c]
xor edx, edx
mov eax, dword [ebx + 0x28]
mov dword [esp + 0x2c], eax
mov dword [esp + 0x80], edx
mov dword [ecx + 0x34], eax
mov ecx, dword [ebx + 0x28]
inc ecx
mov dword [ebx + 0x28], ecx
mov eax, dword [edi + 8]
test eax, eax
je 0x10079c63
nop
inc ecx
inc edx
mov dword [ebx + 0x28], ecx
mov eax, dword [eax + 0x14]
test eax, eax
jne 0x10079c50
mov dword [esp + 0x80], edx
cmp byte [esp + 0xf], 2
jne 0x10079c88
mov ecx, dword [ebx + 0x100]
mov eax, dword [edi]
mov dword [esp + 0x84], ebx
mov dword [esp + 0x88], ecx
mov dword [ebx + 0x100], eax
jmp 0x10079c9e
mov eax, dword [esp + 0x74]
mov dword [esp + 0x84], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x88], eax
mov edi, dword [ebx + 8]
lea eax, [ebx + 0x78]
mov dword [esp + 0x3c], edi
mov dword [esp + 0x14], eax
test edi, edi
je 0x10079cba
mov dword [esp + 0x7c], eax
mov dword [esp + 0x44], edi
jmp 0x10079ced
cmp dword [eax], 0
jne 0x10079ccb
mov eax, dword [ebx]
test byte [eax + 0x50], 8
jne 0x10079ccb
mov byte [ebx + 0x17], 1
mov ecx, ebx
call fcn.10043b20
mov edi, eax
lea ecx, [ebx + 0x78]
mov dword [esp + 0x3c], edi
mov eax, ecx
mov dword [esp + 0x7c], ecx
mov dword [esp + 0x44], edi
test edi, edi
je 0x1007ac34
cmp byte [ebx + 0x12], 0
jne 0x10079cfa
or dword [edi + 0x98], 0x10
mov eax, dword [eax]
mov edx, ebx
test eax, eax
mov ecx, esi
cmovne edx, eax
mov eax, 1
shl eax, cl
mov dword [esp + 0x48], edx
mov ecx, dword [edx + 0x58]
test ecx, eax
jne 0x10079d2d
bts ecx, esi
mov dword [edx + 0x58], ecx
cmp esi, 1
jne 0x10079d2d
mov ecx, edx
call fcn.10077e60
mov edx, dword [esp + 0x48]
mov eax, dword [edx + 0x54]
bts eax, esi
mov dword [edx + 0x54], eax
mov eax, dword [esp + 0x34]
or byte [edx + 0x14], al
cmp byte [esp + 0x27], 2
jne 0x10079d69
push dword [esp + 0x2c]
mov edx, dword [esp + 0x24]
mov ecx, ebx
push 0
push 0
push dword [ebp + 8]
call fcn.100798b0
mov eax, dword [esp + 0x3c]
add esp, 0x10
mov dword [esp + 0x78], eax
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x6c]
lea ecx, [esp + 0x90]
mov edx, dword [ebp + 8]
xorps xmm0, xmm0
movlpd qword [esp + 0x98], xmm0
movlpd qword [esp + 0xa0], xmm0
movlpd qword [esp + 0xa8], xmm0
mov dword [esp + 0x90], ebx
mov dword [esp + 0x94], eax
call fcn.1005b180
test eax, eax
jne 0x1007ac34
mov eax, dword [esp + 0x5c]
mov ecx, dword [eax + 0x24]
xor eax, eax
and ecx, 1
or eax, ecx
je 0x10079e2c
cmp byte [ebx + 0x12], 0
jne 0x10079e2c
cmp dword [ebx + 0x7c], 0
jne 0x10079e2c
cmp byte [ebx + 0x9d], 0
jne 0x10079e2c
inc dword [ebx + 0x2c]
mov ecx, dword [edi + 0x6c]
mov edx, dword [ebx + 0x2c]
mov dword [esp + 0x60], edx
cmp dword [edi + 0x70], ecx
jg 0x10079dfd
push 0
push edx
push 0
mov edx, 0x47
mov ecx, edi
call fcn.10043d60
add esp, 0xc
jmp 0x10079e2c
lea eax, [ecx + 1]
mov dword [edi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edi + 0x68]
mov dword [eax + ecx*4], 0x47
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
cmp dword [esp + 0x38], 0
mov edx, dword [esp + 0x34]
mov ecx, dword [esp + 0x20]
jne 0x1007a028
cmp dword [ebp + 8], 0
jne 0x1007a028
test edx, edx
jne 0x1007a028
cmp byte [ecx + 0x2b], 1
je 0x1007a028
cmp esi, 1
je 0x10079e8a
mov eax, dword [ebx]
mov edx, dword [esp + 0x18]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + edx + 4]
cmp byte [eax + 9], 0
je 0x10079e8a
push dword [ecx]
mov edx, esi
push 1
push dword [ecx + 0x14]
mov ecx, ebx
call fcn.1006e630
mov ecx, dword [esp + 0x2c]
add esp, 0xc
test byte [ecx + 0x1c], 0x80
jne 0x10079f5d
mov eax, dword [ecx]
mov edx, dword [esp + 0x60]
mov ecx, dword [ecx + 0x14]
mov dword [esp + 0x50], eax
or eax, 0xffffffff
test edx, edx
mov dword [esp + 0x64], ecx
cmovne eax, edx
mov edx, dword [edi + 0x6c]
mov dword [esp + 0x54], eax
cmp dword [edi + 0x70], edx
jg 0x10079ed6
push eax
push esi
push ecx
mov edx, 0x91
mov ecx, edi
call fcn.10043d60
mov edx, eax
add esp, 0xc
mov eax, dword [esp + 0x44]
add eax, 0x68
jmp 0x10079f0c
mov ebx, dword [esp + 0x64]
lea eax, [edx + 1]
mov dword [edi + 0x6c], eax
lea ecx, [edx + edx*4]
mov eax, dword [edi + 0x68]
mov dword [eax + ecx*4 + 4], ebx
mov ebx, dword [esp + 0x54]
mov dword [eax + ecx*4 + 0xc], ebx
mov ebx, dword [esp + 0x1c]
mov dword [eax + ecx*4], 0x91
mov dword [eax + ecx*4 + 8], esi
mov dword [eax + ecx*4 + 0x10], 0
lea eax, [edi + 0x68]
mov ecx, dword [edi]
cmp byte [ecx + 0x57], 0
je 0x10079f26
mov edx, dword [esp + 0x50]
push edx
or edx, 0xffffffff
call fcn.10044910
add esp, 4
jmp 0x10079f5d
test edx, edx
jns 0x10079f2e
mov edx, dword [edi + 0x6c]
dec edx
mov eax, dword [eax]
lea ecx, [edx + edx*4]
cmp byte [eax + ecx*4 + 1], 0
lea eax, [eax + ecx*4]
mov edx, dword [esp + 0x50]
je 0x10079f52
push 0xffffffffffffffff
push edx
mov edx, eax
mov ecx, edi
call fcn.10044a00
add esp, 8
jmp 0x10079f5d
test edx, edx
je 0x10079f5d
mov dword [eax + 0x10], edx
mov byte [eax + 1], 0xff
mov edx, dword [esp + 0x20]
mov ecx, dword [edx + 8]
mov dword [esp + 0x44], ecx
test ecx, ecx
je 0x1007ac02
mov eax, dword [ecx + 0x38]
and al, 3
cmp al, 2
jne 0x10079fb5
test byte [edx + 0x1c], 0x80
je 0x10079fb5
mov eax, dword [esp + 0x60]
or edx, 0xffffffff
mov ebx, dword [ecx + 0x2c]
test eax, eax
mov ecx, dword [edi + 0x6c]
cmovne edx, eax
cmp dword [edi + 0x70], ecx
jg 0x10079f9b
push edx
push esi
push ebx
jmp 0x10079fc8
lea eax, [ecx + 1]
mov dword [edi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edi + 0x68]
mov edi, dword [esp + 0x3c]
mov dword [eax + ecx*4 + 0xc], edx
mov edx, dword [esp + 0x20]
jmp 0x10079ff5
mov eax, dword [ecx + 0x2c]
mov ecx, dword [edi + 0x6c]
mov dword [esp + 0x64], eax
cmp dword [edi + 0x70], ecx
jg 0x10079fdd
push 0
push esi
push eax
mov edx, 0x91
mov ecx, edi
call fcn.10043d60
mov edx, dword [esp + 0x2c]
add esp, 0xc
jmp 0x1007a00c
mov ebx, dword [esp + 0x64]
lea eax, [ecx + 1]
mov dword [edi + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edi + 0x68]
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov dword [eax + ecx*4 + 8], esi
mov dword [eax + ecx*4 + 4], ebx
mov dword [eax + ecx*4], 0x91
mov ecx, dword [esp + 0x44]
mov ecx, dword [ecx + 0x14]
mov dword [esp + 0x44], ecx
test ecx, ecx
jne 0x10079f70
mov ebx, dword [esp + 0x1c]
jmp 0x1007ac02
test byte [esp + 0xa8], 0x40
mov eax, 1
cmovne edx, eax
xor eax, eax
test edx, edx
sete al
test byte [ecx + 0x1c], 0x80
lea eax, [eax*8 + 0x14]
movzx eax, ax
mov dword [esp + 0x3c], eax
jne 0x1007a0d1
inc dword [ebx + 0x2c]
lea esi, [edi + 0x6c]
mov ecx, dword [esi]
lea eax, [edi + 0x70]
mov edx, dword [ebx + 0x2c]
mov dword [esp + 0x48], 0
mov dword [esp + 0x34], 1
mov dword [esp + 0x68], edx
mov dword [esp + 0x38], esi
mov dword [esp + 0x18], eax
cmp dword [eax], ecx
jg 0x1007a09a
push 0
push edx
push 0
mov edx, 0x4b
mov ecx, edi
call fcn.10043d60
add esp, 0xc
jmp 0x1007a1d6
mov ebx, dword [esp + 0x1c]
lea eax, [ecx + 1]
mov dword [esi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edi + 0x68]
mov dword [eax + ecx*4], 0x4b
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
jmp 0x1007a1d6
mov ecx, dword [ecx + 8]
mov dword [esp + 0x48], ecx
test ecx, ecx
je 0x1007a0f4
nop dword [eax]
mov eax, dword [ecx + 0x38]
and al, 3
cmp al, 2
je 0x1007a0f0
mov ecx, dword [ecx + 0x14]
test ecx, ecx
jne 0x1007a0e0
mov dword [esp + 0x48], ecx
mov eax, dword [ebx + 0x2c]
lea esi, [edi + 0x6c]
movzx ecx, word [ecx + 0x32]
mov dword [esp + 0x34], ecx
mov dword [esp + 0x38], esi
lea edx, [eax + 1]
mov dword [esp + 0x4c], edx
movsx edx, cx
add eax, edx
mov dword [ebx + 0x2c], eax
mov eax, dword [ebx + 0x28]
mov dword [esp + 0x30], eax
inc eax
mov dword [ebx + 0x28], eax
lea eax, [edi + 0x70]
mov ecx, dword [esi]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x18], eax
cmp dword [eax], ecx
jg 0x1007a14d
push 0
push edx
push dword [esp + 0x38]
mov edx, 0x76
mov ecx, edi
call fcn.10043d60
add esp, 0xc
mov dword [esp + 0x10], eax
jmp 0x1007a17f
mov ebx, dword [esp + 0x30]
lea eax, [ecx + 1]
mov dword [esi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edi + 0x68]
mov dword [eax + ecx*4 + 4], ebx
mov ebx, dword [esp + 0x1c]
mov dword [eax + ecx*4], 0x76
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [ebx + 8]
mov ecx, ebx
mov edx, dword [esp + 0x48]
mov dword [esp + 0x54], eax
call fcn.100787f0
mov dword [esp + 0x44], eax
test eax, eax
je 0x1007a1d6
mov edx, dword [esp + 0x54]
mov ecx, dword [edx]
cmp byte [ecx + 0x57], 0
je 0x1007a1b5
push eax
mov edx, 0xfffffff8
call fcn.10044910
add esp, 4
jmp 0x1007a1cb
mov eax, dword [edx + 0x6c]
lea ecx, [eax + eax*4]
mov eax, dword [edx + 0x68]
mov edx, dword [esp + 0x44]
mov byte [eax + ecx*4 - 0x13], 0xf8
mov dword [eax + ecx*4 - 4], edx
lea eax, [edi + 0x70]
mov dword [esp + 0x38], esi
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x2c]
mov ecx, ebx
mov edx, dword [esp + 0x6c]
inc eax
push eax
push dword [esp + 0x40]
push 0
push 0
push 0
push dword [ebp + 8]
call fcn.100bdf10
mov edx, eax
add esp, 0x18
mov dword [esp + 0x44], edx
test edx, edx
je 0x1007ac34
mov eax, dword [edx + 0x14]
mov dword [esp + 0x70], eax
mov eax, dword [edx + 0x18]
mov dword [esp + 0x54], eax
mov al, byte [edx + 0x2e]
mov byte [esp + 0xf], al
mov byte [esp + 0x8c], al
cmp al, 1
je 0x1007a236
mov eax, dword [esp + 0x14]
mov ecx, ebx
mov eax, dword [eax]
test eax, eax
cmovne ecx, eax
mov byte [ecx + 0x14], 1
test byte [edx + 0x30], 1
mov edx, dword [esp + 0x18]
je 0x1007a299
mov ecx, dword [esi]
cmp dword [edx], ecx
jg 0x1007a263
push 0
push 0
push dword [esp + 0x34]
mov edx, 0x8f
mov ecx, edi
call fcn.10043d60
mov edx, dword [esp + 0x24]
add esp, 0xc
jmp 0x1007a299
mov ebx, dword [esp + 0x2c]
lea eax, [ecx + 1]
mov dword [esi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edi + 0x68]
mov dword [eax + ecx*4 + 4], ebx
mov ebx, dword [esp + 0x1c]
mov dword [eax + ecx*4], 0x8f
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x60]
test eax, eax
je 0x1007a2ef
mov ecx, dword [esi]
cmp dword [edx], ecx
jg 0x1007a2bd
push 0
push 1
push eax
mov edx, 0x56
mov ecx, edi
call fcn.10043d60
add esp, 0xc
jmp 0x1007a2ef
mov edx, dword [esp + 0x60]
lea eax, [ecx + 1]
mov dword [esi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edi + 0x68]
mov dword [eax + ecx*4], 0x56
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], 1
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
cmp dword [esp + 0x48], 0
je 0x1007a355
mov eax, dword [esp + 0x34]
xor ecx, ecx
cwde
mov dword [esp + 0x3c], ecx
test eax, eax
jle 0x1007a34b
mov esi, dword [esp + 0x20]
mov ebx, dword [esp + 0x48]
nop dword [eax]
mov eax, dword [esp + 0x4c]
mov edx, esi
add eax, ecx
push eax
mov eax, dword [ebx + 4]
movsx eax, word [eax + ecx*2]
mov ecx, edi
push eax
push dword [esp + 0x34]
call fcn.100618d0
mov ecx, dword [esp + 0x48]
add esp, 0xc
mov edx, dword [esp + 0x34]
inc ecx
movsx eax, dx
mov dword [esp + 0x3c], ecx
cmp ecx, eax
jl 0x1007a310
mov ebx, dword [esp + 0x1c]
mov esi, dword [esp + 0x38]
mov edx, dword [esp + 0x4c]
mov dword [esp + 0x14], edx
jmp 0x1007a3b8
mov edx, dword [ebx + 0x2c]
mov eax, dword [esp + 0x18]
inc edx
mov dword [ebx + 0x2c], edx
mov ecx, dword [esi]
mov dword [esp + 0x14], edx
cmp dword [eax], ecx
jg 0x1007a386
push 0
push edx
push dword [esp + 0x34]
mov edx, 0x87
mov ecx, edi
call fcn.10043d60
mov edx, dword [esp + 0x20]
add esp, 0xc
jmp 0x1007a3b8
lea eax, [ecx + 1]
mov dword [esi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edi + 0x68]
mov esi, dword [esp + 0x2c]
mov dword [eax + ecx*4 + 4], esi
mov esi, dword [esp + 0x38]
mov dword [eax + ecx*4], 0x87
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
cmp byte [esp + 0xf], 0
lea ecx, [ebx + 0x2c]
je 0x1007a489
mov eax, dword [esp + 0x34]
mov esi, dword [esp + 0x80]
mov ecx, dword [esp + 0x5c]
movzx eax, ax
mov dword [esp + 0x3c], eax
lea eax, [esi + 2]
cdq
push edx
push eax
call fcn.1001e920
mov ecx, eax
add esp, 8
mov dword [esp + 0x58], ecx
test ecx, ecx
jne 0x1007a402
mov ecx, dword [esp + 0x44]
call fcn.100beec0
jmp 0x1007ac34
lea eax, [esi + 1]
push eax
push 1
push ecx
call fcn.1012aa20
mov edx, dword [esp + 0x64]
add esp, 0xc
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x2c]
mov byte [esi + edx + 1], 0
test eax, eax
js 0x1007a42c
sub eax, ecx
mov byte [eax + edx], 0
mov eax, dword [esp + 0x54]
test eax, eax
js 0x1007a43a
sub eax, ecx
mov byte [eax + edx], 0
mov eax, dword [esp + 0x10]
test eax, eax
je 0x1007a46f
mov ecx, dword [edi]
cmp byte [ecx + 0x57], 0
jne 0x1007a46f
lea edx, [eax + eax*4]
mov eax, dword [edi + 0x68]
push dword [eax + edx*4 + 0x10]
lea esi, [eax + edx*4]
movsx edx, byte [esi + 1]
call fcn.10044910
add esp, 4
mov word [esi], 0xb8
mov dword [esi + 0x10], 0
dec dword [ebx + 0x38]
lea edx, [edi + 0x68]
mov eax, dword [ebx + 0x38]
mov esi, dword [esp + 0x38]
mov dword [esp + 0x50], eax
mov dword [esp + 0x10], edx
jmp 0x1007a5e3
mov eax, dword [esp + 0x48]
test eax, eax
je 0x1007a56d
inc dword [ecx]
mov edx, eax
mov ecx, dword [ecx]
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x34]
movsx ecx, cx
push ecx
push ecx
mov ecx, dword [ebx]
mov dword [esp + 0x44], 0
call fcn.100839d0
mov ecx, dword [esp + 0x3c]
add esp, 4
mov edx, 0x61
push eax
push dword [esp + 0x1c]
movsx eax, cx
mov ecx, edi
push eax
push dword [esp + 0x5c]
call fcn.10044100
mov eax, dword [esp + 0x2c]
add esp, 0x14
mov ecx, dword [esi]
mov dword [esp + 0x70], ecx
cmp dword [eax], ecx
jg 0x1007a50a
push dword [esp + 0x4c]
mov edx, 0x8a
mov ecx, edi
push dword [esp + 0x18]
push dword [esp + 0x38]
call fcn.10043d60
add esp, 0xc
lea edx, [edi + 0x68]
mov ecx, eax
jmp 0x1007a546
mov ebx, dword [esp + 0x30]
lea eax, [ecx + 1]
mov dword [esi], eax
lea edx, [edi + 0x68]
mov eax, dword [edx]
lea ecx, [ecx + ecx*4]
mov dword [eax + ecx*4 + 4], ebx
mov ebx, dword [esp + 0x14]
mov dword [eax + ecx*4 + 8], ebx
mov ebx, dword [esp + 0x4c]
mov dword [eax + ecx*4 + 0xc], ebx
mov ebx, dword [esp + 0x1c]
mov dword [eax + ecx*4], 0x8a
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [esp + 0x70]
mov eax, dword [edi]
mov dword [esp + 0x10], edx
cmp byte [eax + 0x57], 0
jne 0x1007a5d6
mov eax, dword [edx]
lea ecx, [ecx + ecx*4]
mov ebx, dword [esp + 0x34]
movsx edx, bx
mov byte [eax + ecx*4 + 1], 0xfd
mov dword [eax + ecx*4 + 0x10], edx
jmp 0x1007a5d2
mov eax, dword [esp + 0x18]
mov ecx, dword [esi]
mov dword [esp + 0x3c], 1
cmp dword [eax], ecx
jg 0x1007a59e
push 0
push edx
push dword [esp + 0x70]
mov edx, 0x9c
mov ecx, edi
call fcn.10043d60
lea eax, [edi + 0x68]
add esp, 0xc
mov dword [esp + 0x10], eax
jmp 0x1007a5d6
mov ebx, dword [esp + 0x68]
lea eax, [ecx + 1]
mov dword [esi], eax
lea ecx, [ecx + ecx*4]
lea eax, [edi + 0x68]
mov dword [esp + 0x10], eax
mov eax, dword [eax]
mov dword [eax + ecx*4], 0x9c
mov dword [eax + ecx*4 + 4], ebx
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ebx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x44]
call fcn.100beec0
mov edx, dword [esp + 0x10]
cmp byte [esp + 0x27], 2
je 0x1007a6b6
xor eax, eax
cmp byte [esp + 0xf], 2
mov dword [esp + 0x4c], eax
jne 0x1007a655
mov eax, dword [esp + 0x18]
mov ecx, dword [esi]
mov dword [esp + 0x4c], ecx
cmp dword [eax], ecx
jg 0x1007a624
push 0
push 0
push 0
mov edx, 0xf
mov ecx, edi
call fcn.10043d60
add esp, 0xc
mov dword [esp + 0x4c], eax
jmp 0x1007a655
lea eax, [ecx + 1]
mov dword [esi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edx]
mov dword [eax + ecx*4], 0xf
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov edx, dword [esp + 0x20]
lea eax, [esp + 0x78]
push eax
lea eax, [esp + 0x2c]
mov ecx, ebx
push eax
push dword [esp + 0x60]
push dword [esp + 0x38]
push 8
push 0x71
call fcn.10088770
mov al, byte [esp + 0x27]
add esp, 0x18
cmp al, 2
jne 0x1007a6ba
mov edx, dword [esi]
mov ecx, dword [esp + 0x4c]
lea eax, [edx - 1]
cmp ecx, eax
jne 0x1007a692
mov dword [esi], eax
jmp 0x1007a6c2
mov eax, dword [edi]
cmp byte [eax + 0x57], 0
je 0x1007a6a4
mov eax, 0x10168a18
mov dword [eax + 8], edx
jmp 0x1007a6c2
mov eax, dword [esp + 0x10]
lea ecx, [ecx + ecx*4]
mov eax, dword [eax]
mov dword [eax + ecx*4 + 8], edx
lea eax, [eax + ecx*4]
jmp 0x1007a6c2
mov al, byte [esp + 0xf]
test al, al
je 0x1007a77a
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x28]
cmp byte [eax + 0x2b], 1
je 0x1007a910
mov eax, dword [esp + 0x58]
sub eax, dword [esp + 0x2c]
cmp byte [eax + ecx], 0
je 0x1007a910
mov eax, dword [esp + 0x18]
mov ecx, dword [esi]
mov dword [esp + 0x70], ecx
cmp dword [eax], ecx
jg 0x1007a717
push dword [esp + 0x14]
mov edx, 0x1c
mov ecx, edi
push dword [esp + 0x54]
push dword [esp + 0x30]
call fcn.10043d60
mov edx, dword [esp + 0x1c]
add esp, 0xc
mov ecx, eax
jmp 0x1007a754
mov edx, dword [esp + 0x10]
lea eax, [ecx + 1]
mov ebx, dword [esp + 0x28]
lea ecx, [ecx + ecx*4]
mov dword [esi], eax
mov eax, dword [edx]
mov dword [eax + ecx*4 + 4], ebx
mov ebx, dword [esp + 0x50]
mov dword [eax + ecx*4 + 8], ebx
mov ebx, dword [esp + 0x14]
mov dword [eax + ecx*4 + 0xc], ebx
mov ebx, dword [esp + 0x1c]
mov dword [eax + ecx*4], 0x1c
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [esp + 0x70]
mov eax, dword [edi]
cmp byte [eax + 0x57], 0
jne 0x1007a90c
mov eax, dword [edx]
lea ecx, [ecx + ecx*4]
mov byte [eax + ecx*4 + 1], 0xfd
lea ecx, [eax + ecx*4]
mov eax, dword [esp + 0x3c]
cwde
mov dword [ecx + 0x10], eax
jmp 0x1007a90c
cmp dword [esp + 0x48], 0
mov eax, dword [esp + 0x18]
mov ecx, dword [esi]
mov dword [esp + 0x40], ecx
mov eax, dword [eax]
je 0x1007a8b0
cmp eax, ecx
jg 0x1007a7b6
push 0
push 0
push dword [esp + 0x38]
mov edx, 0x24
mov ecx, edi
call fcn.10043d60
mov edx, dword [esp + 0x1c]
add esp, 0xc
mov dword [esp + 0x40], eax
jmp 0x1007a7eb
mov edx, dword [esp + 0x10]
lea eax, [ecx + 1]
mov ebx, dword [esp + 0x30]
lea ecx, [ecx + ecx*4]
mov dword [esi], eax
mov eax, dword [edx]
mov dword [eax + ecx*4], 0x24
mov dword [eax + ecx*4 + 4], ebx
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x20]
mov ecx, dword [esi]
mov ebx, dword [esp + 0x18]
cmp byte [eax + 0x2b], 1
jne 0x1007a857
cmp dword [ebx], ecx
mov ebx, dword [esp + 0x1c]
jg 0x1007a821
push dword [esp + 0x14]
mov edx, 0x5e
mov ecx, edi
push 0
push dword [esp + 0x38]
call fcn.10043d60
add esp, 0xc
jmp 0x1007a90c
lea eax, [ecx + 1]
mov dword [esi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edx]
mov edx, dword [esp + 0x30]
mov dword [eax + ecx*4 + 4], edx
mov edx, dword [esp + 0x14]
mov dword [eax + ecx*4], 0x5e
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], edx
mov dword [eax + ecx*4 + 0x10], 0
jmp 0x1007a90c
cmp dword [ebx], ecx
mov ebx, dword [esp + 0x1c]
jg 0x1007a87d
push 0
push dword [esp + 0x18]
mov edx, 0x86
mov ecx, edi
push dword [esp + 0x38]
call fcn.10043d60
add esp, 0xc
jmp 0x1007a90c
lea eax, [ecx + 1]
mov dword [esi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edx]
mov edx, dword [esp + 0x30]
mov dword [eax + ecx*4 + 4], edx
mov edx, dword [esp + 0x14]
mov dword [eax + ecx*4], 0x86
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
jmp 0x1007a90c
cmp eax, ecx
jg 0x1007a8cf
push dword [esp + 0x14]
mov edx, 0x2e
mov ecx, edi
push 0
push dword [esp + 0x70]
call fcn.10043d60
add esp, 0xc
jmp 0x1007a908
mov edx, dword [esp + 0x68]
lea eax, [ecx + 1]
mov dword [esi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esp + 0x10]
mov eax, dword [eax]
mov dword [eax + ecx*4 + 4], edx
mov edx, dword [esp + 0x14]
mov dword [eax + ecx*4], 0x2e
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], edx
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x40]
mov dword [esp + 0x40], eax
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x20]
cmp byte [edx + 0x2b], 1
jne 0x1007aa91
mov esi, dword [edx + 0x34]
test esi, esi
je 0x1007a93b
mov eax, dword [esp + 0x5c]
nop dword [eax]
cmp dword [esi], eax
je 0x1007a93b
mov esi, dword [esi + 0x18]
test esi, esi
jne 0x1007a930
mov ecx, ebx
call fcn.100acb50
mov ecx, dword [esp + 0x7c]
mov eax, dword [ecx]
test eax, eax
mov ecx, ebx
cmovne ecx, eax
cmp byte [esp + 0xf], 1
mov byte [ecx + 0x15], 1
jne 0x1007a9c3
mov ecx, dword [esp + 0x38]
mov eax, dword [esp + 0x18]
mov edx, dword [ecx]
cmp dword [eax], edx
jg 0x1007a981
push 0
push 0
push dword [esp + 0x34]
mov edx, 0x7a
mov ecx, edi
call fcn.10043d60
add esp, 0xc
jmp 0x1007a9b6
lea eax, [edx + 1]
mov dword [ecx], eax
lea ecx, [edx + edx*4]
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x2c]
mov eax, dword [eax]
mov dword [eax + ecx*4], 0x7a
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x7c]
cmp dword [eax], 0
jne 0x1007a9c3
mov byte [ebx + 0x14], 0
mov edx, dword [esp + 0x38]
mov eax, dword [esp + 0x18]
mov ecx, dword [edx]
mov dword [esp + 0x70], ecx
cmp dword [eax], ecx
jg 0x1007a9f4
push dword [esp + 0x14]
mov edx, 7
mov ecx, edi
push 1
push 0
call fcn.10043d60
mov edx, dword [esp + 0x44]
add esp, 0xc
mov ecx, eax
jmp 0x1007aa31
mov ebx, dword [esp + 0x14]
lea eax, [ecx + 1]
mov dword [edx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esp + 0x10]
mov eax, dword [eax]
mov dword [eax + ecx*4 + 0xc], ebx
mov ebx, dword [esp + 0x1c]
mov dword [eax + ecx*4], 7
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], 1
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [esp + 0x70]
mov eax, dword [edi]
cmp byte [eax + 0x57], 0
jne 0x1007aa62
test ecx, ecx
jns 0x1007aa40
mov ecx, dword [edx]
dec ecx
mov edx, dword [esp + 0x10]
lea ecx, [ecx + ecx*4]
mov eax, dword [edx]
cmp byte [eax + ecx*4 + 1], 0
lea eax, [eax + ecx*4]
je 0x1007aa81
push 0xfffffffffffffff5
push esi
mov edx, eax
mov ecx, edi
call fcn.10044a00
add esp, 8
mov edx, dword [esp + 0x10]
mov esi, dword [esp + 0x38]
mov eax, dword [esi]
test eax, eax
jle 0x1007aaca
lea ecx, [eax + eax*4]
mov eax, dword [edx]
mov edx, 2
mov word [eax + ecx*4 - 0x12], dx
jmp 0x1007aaca
test esi, esi
je 0x1007aa66
mov dword [eax + 0x10], esi
mov byte [eax + 1], 0xf5
inc dword [esi + 0xc]
jmp 0x1007aa66
push dword [esp + 0x54]
cmp byte [ebx + 0x12], 0
push dword [esp + 0x90]
sete al
push 0xb
movzx eax, al
push eax
push dword [esp + 0x4c]
push dword [esp + 0x28]
push dword [esp + 0x90]
push ecx
push dword [esp + 0x84]
mov ecx, ebx
call fcn.1007ac90
add esp, 0x24
cmp byte [esp + 0xf], 0
je 0x1007ab11
mov ecx, dword [edi + 0xc]
mov edx, dword [esp + 0x50]
not edx
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x1007aafb
push edx
mov edx, edi
call fcn.100445b0
mov ecx, dword [esp + 0x48]
add esp, 4
call fcn.100beec0
jmp 0x1007ac02
mov ecx, dword [ecx + 0x40]
mov eax, dword [esi]
mov dword [ecx + edx*4], eax
mov ecx, dword [esp + 0x44]
call fcn.100beec0
jmp 0x1007ac02
cmp dword [esp + 0x48], 0
mov eax, dword [esp + 0x18]
mov ecx, dword [esi]
mov eax, dword [eax]
je 0x1007ab88
mov edx, dword [esp + 0x40]
inc edx
cmp eax, ecx
jg 0x1007ab48
push 0
push edx
push dword [esp + 0x38]
mov edx, 0x27
mov ecx, edi
call fcn.10043d60
mov edx, dword [esp + 0x1c]
add esp, 0xc
jmp 0x1007abe2
mov edx, dword [esp + 0x10]
lea eax, [ecx + 1]
mov ebx, dword [esp + 0x40]
lea ecx, [ecx + ecx*4]
mov dword [esi], eax
inc ebx
mov eax, dword [edx]
mov edx, dword [esp + 0x30]
mov dword [eax + ecx*4 + 4], edx
mov edx, dword [esp + 0x10]
mov dword [eax + ecx*4 + 8], ebx
mov ebx, dword [esp + 0x1c]
mov dword [eax + ecx*4], 0x27
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
jmp 0x1007abe2
cmp eax, ecx
jg 0x1007aba9
push 0
push dword [esp + 0x44]
mov edx, 9
mov ecx, edi
push 0
call fcn.10043d60
mov edx, dword [esp + 0x1c]
add esp, 0xc
jmp 0x1007abe2
mov edx, dword [esp + 0x10]
lea eax, [ecx + 1]
mov ebx, dword [esp + 0x40]
lea ecx, [ecx + ecx*4]
mov dword [esi], eax
mov eax, dword [edx]
mov dword [eax + ecx*4 + 8], ebx
mov ebx, dword [esp + 0x1c]
mov dword [eax + ecx*4], 9
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [edi]
mov esi, dword [esi]
cmp byte [eax + 0x57], 0
je 0x1007abf3
mov eax, 0x10168a18
jmp 0x1007abff
mov eax, dword [esp + 0x40]
lea ecx, [eax + eax*4]
mov eax, dword [edx]
lea eax, [eax + ecx*4]
mov dword [eax + 8], esi
cmp byte [ebx + 0x12], 0
jne 0x1007ac1b
cmp dword [ebx + 0x7c], 0
jne 0x1007ac1b
cmp dword [ebx + 0x74], 0
je 0x1007ac1b
mov ecx, ebx
call fcn.10084090
mov eax, dword [esp + 0x60]
test eax, eax
je 0x1007ac34
push str.rows_deleted
mov edx, eax
mov ecx, edi
call fcn.100796a0
add esp, 4
mov eax, dword [esp + 0x84]
mov esi, dword [esp + 0x58]
test eax, eax
je 0x1007ac54
mov ecx, dword [esp + 0x88]
mov dword [eax + 0x100], ecx
jmp 0x1007ac54
xor esi, esi
mov ebx, dword [esp + 0x5c]
mov ecx, ebx
mov edx, dword [esp + 0x6c]
call fcn.10077590
mov eax, dword [ebp + 8]
test eax, eax
je 0x1007ac73
mov edx, eax
mov ecx, ebx
call fcn.1005cf40
test esi, esi
je 0x1007ac80
mov edx, esi
mov ecx, ebx
call fcn.1001e530
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret