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

Disassembly:
sub esp, 0x14c
push ebx
push ebp
push esi
mov esi, dword [esp + 0x160]
push edi
mov eax, dword [esi]
mov ecx, dword [eax + 8]
mov eax, dword [ecx + 8]
push eax
call dword [eax + 0x20]
mov edx, dword [esi]
mov dword [esp + 0x6c], eax
xor ebx, ebx
add esp, 4
mov eax, dword [edx + 4]
mov dword [esp + 0x28], ebx
mov ecx, dword [eax + 8]
cmp dword [ecx + 0x20], ebx
jle 0x78e19a
push 0x2b
push eax
call dword [eax + 0x74]
add esp, 8
test al, al
je 0x78e19a
mov eax, dword [esp + 0x160]
xor ecx, ecx
mov edx, eax
pop edi
pop esi
pop ebp
mov dword [edx], ecx
mov ecx, dword [esp + 8]
pop ebx
mov dword [edx + 4], ecx
mov ecx, dword [esp + 8]
mov dword [edx + 8], ecx
add esp, 0x14c
ret
mov edx, dword [esi]
push 1
mov eax, dword [edx + 8]
push eax
call dword [eax + 0x14]
mov dword [esp + 0x18], eax
mov eax, dword [esi]
xor ebp, ebp
push 1
mov ecx, dword [eax + 8]
mov dword [esp + 0x64], ebx
mov dword [esp + 0x50], ebx
mov dword [esp + 0x6c], ebx
mov eax, dword [ecx + 8]
mov dword [esp + 0x44], ebp
push eax
mov dword [esp + 0x6c], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x44], ebx
mov dword [esp + 0x40], ebx
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x28], ebx
call dword [eax + 0x18]
add esp, 0x10
sub eax, 0x24
je 0x78e263
dec eax
je 0x78e25c
mov edx, dword [esi]
mov eax, dword [edx + 4]
mov ecx, dword [eax + 8]
cmp dword [ecx + 0x20], ebx
jle 0x78e20a
mov byte [ecx + 0x18], 1
jmp 0x78ebb6
push eax
call dword [eax + 0x88]
mov edx, dword [esi]
add esp, 4
mov eax, dword [edx + 4]
mov ecx, dword [eax + 8]
mov edx, dword [ecx + 4]
mov dword [edx], 3
mov eax, dword [esi]
mov ecx, dword [eax + 4]
mov edx, dword [ecx + 8]
mov eax, dword [edx + 4]
mov dword [eax + 8], 0x8bd670
mov ecx, dword [esi]
mov edx, dword [ecx + 4]
mov eax, dword [edx + 8]
mov ecx, dword [eax + 4]
mov dword [ecx + 0x34], 0x4a
mov edx, dword [esi]
mov eax, dword [edx + 4]
mov ecx, dword [eax + 8]
mov edx, dword [ecx + 4]
mov dword [edx + 0x38], ebx
jmp 0x78f794
mov eax, 3
jmp 0x78e29b
mov eax, dword [esi]
push 2
mov ecx, dword [eax + 8]
mov eax, dword [ecx + 8]
push eax
call dword [eax + 0x18]
push esi
call fcn.0079ce80
add esp, 0xc
test al, al
je 0x78e285
mov eax, 1
jmp 0x78e29b
push esi
call fcn.0079d970
add esp, 4
test al, al
je 0x78f72d
mov eax, 2
dec eax
je 0x78f1fa
dec eax
je 0x78eef8
dec eax
jne 0x78f794
mov edx, dword [esi]
push 0x8b4a30
push 0x25
mov eax, dword [edx + 4]
push eax
call dword [eax + 0x10]
mov edi, eax
mov eax, dword [esi]
add esp, 0xc
mov ecx, dword [eax + 4]
mov eax, dword [ecx + 8]
cmp byte [eax], 1
je 0x78f794
cmp byte [eax + 0x18], 1
je 0x78ebb6
mov edx, dword [eax + 0x20]
test edx, edx
jne 0x78e307
mov edx, dword [esi + 0x1a8]
push str.token_STATEMENT_IFCOLOR
push ecx
push edx
call fcn.007bb030
push 0
push edi
push eax
mov dword [esp + 0x5c], eax
call dword [eax + 0x24]
add esp, 0x18
mov eax, dword [esi]
push 0
push 0x8b4a48
mov ecx, dword [eax + 4]
mov edx, dword [ecx + 8]
mov eax, dword [edx + 0xc]
push eax
call dword [eax + 0x14]
lea eax, [esp + 0x150]
push esi
push eax
call fcn.007982a0
mov ecx, dword [eax]
mov dword [esp + 0x8c], ecx
mov ecx, dword [esi]
mov edx, dword [eax + 4]
mov dword [esp + 0x90], edx
mov edx, dword [ecx + 4]
mov eax, dword [eax + 8]
mov dword [esp + 0x94], eax
mov eax, dword [edx + 8]
mov eax, dword [eax + 0xc]
push eax
call dword [eax + 0xc]
mov ecx, dword [esi]
add esp, 0x18
mov ecx, dword [ecx + 4]
mov eax, dword [ecx + 8]
cmp byte [eax], 1
je 0x78f794
cmp byte [eax + 0x18], 1
je 0x78ebb6
mov edx, dword [eax + 0x20]
test edx, edx
jne 0x78e3a5
mov edx, dword [esi + 0x1a8]
push str.rule_expression
push ecx
push edx
call fcn.007bb2a0
mov ebx, eax
mov eax, dword [esp + 0x8c]
push 0
push eax
push ebx
mov dword [esp + 0x4c], ebx
call dword [ebx + 0x24]
add esp, 0x18
mov ecx, dword [esi]
push 0x8b4a68
push 0x64
mov eax, dword [ecx + 4]
push eax
call dword [eax + 0x10]
mov edx, dword [esi]
mov edi, eax
add esp, 0xc
mov ecx, dword [edx + 4]
mov eax, dword [ecx + 8]
cmp byte [eax], 1
je 0x78f794
cmp byte [eax + 0x18], 1
je 0x78ebb6
mov edx, dword [eax + 0x20]
test edx, edx
jne 0x78e3fe
mov edx, dword [esi + 0x1a8]
push str.token_AUX_SYMBOL_COMMA
push ecx
push edx
call fcn.007bb030
mov ebp, eax
push 0
push edi
push ebp
mov dword [esp + 0x50], ebp
call dword [ebp + 0x24]
add esp, 0x18
mov eax, dword [esi]
push 0
push 0x8b4a80
mov ecx, dword [eax + 4]
mov edx, dword [ecx + 8]
mov eax, dword [edx + 0xc]
push eax
call dword [eax + 0x14]
lea eax, [esp + 0x108]
push esi
push eax
call fcn.007982a0
mov ecx, dword [eax]
mov dword [esp + 0x80], ecx
mov ecx, dword [esi]
mov edx, dword [eax + 4]
mov dword [esp + 0x84], edx
mov edx, dword [ecx + 4]
mov eax, dword [eax + 8]
mov dword [esp + 0x88], eax
mov eax, dword [edx + 8]
mov eax, dword [eax + 0xc]
push eax
call dword [eax + 0xc]
mov ecx, dword [esi]
add esp, 0x18
mov ecx, dword [ecx + 4]
mov eax, dword [ecx + 8]
cmp byte [eax], 1
je 0x78f794
cmp byte [eax + 0x18], 1
je 0x78ebb6
mov edx, dword [eax + 0x20]
test edx, edx
jne 0x78e4a0
test ebx, ebx
jne 0x78e492
mov edx, dword [esi + 0x1a8]
push str.rule_expression
push ecx
push edx
call fcn.007bb2a0
mov ebx, eax
add esp, 0xc
mov dword [esp + 0x34], ebx
mov eax, dword [esp + 0x74]
push 0
push eax
push ebx
call dword [ebx + 0x24]
add esp, 0xc
mov ecx, dword [esi]
push 0x8b4aa0
push 0x64
mov eax, dword [ecx + 4]
push eax
call dword [eax + 0x10]
mov edx, dword [esi]
mov edi, eax
add esp, 0xc
mov ecx, dword [edx + 4]
mov eax, dword [ecx + 8]
cmp byte [eax], 1
je 0x78f794
cmp byte [eax + 0x18], 1
je 0x78ebb6
mov edx, dword [eax + 0x20]
test edx, edx
jne 0x78e500
test ebp, ebp
jne 0x78e4f6
mov edx, dword [esi + 0x1a8]
push str.token_AUX_SYMBOL_COMMA
push ecx
push edx
call fcn.007bb030
mov ebp, eax
add esp, 0xc
mov dword [esp + 0x38], ebp
push 0
push edi
push ebp
call dword [ebp + 0x24]
add esp, 0xc
mov eax, dword [esi]
push 0
push 0x8b4ab8
mov ecx, dword [eax + 4]
mov edx, dword [ecx + 8]
mov eax, dword [edx + 0xc]
push eax
call dword [eax + 0x14]
lea eax, [esp + 0xc0]
push esi
push eax
call fcn.007982a0
mov ecx, dword [eax]
mov dword [esp + 0x98], ecx
mov ecx, dword [esi]
mov edx, dword [eax + 4]
mov dword [esp + 0x9c], edx
mov edx, dword [ecx + 4]
mov eax, dword [eax + 8]
mov dword [esp + 0xa0], eax
mov eax, dword [edx + 8]
mov eax, dword [eax + 0xc]
push eax
call dword [eax + 0xc]
mov ecx, dword [esi]
add esp, 0x18
mov ecx, dword [ecx + 4]
mov eax, dword [ecx + 8]
cmp byte [eax], 1
je 0x78f794
cmp byte [eax + 0x18], 1
je 0x78ebb6
mov edx, dword [eax + 0x20]
test edx, edx
jne 0x78e5a5
test ebx, ebx
jne 0x78e594
mov edx, dword [esi + 0x1a8]
push str.rule_expression
push ecx
push edx
call fcn.007bb2a0
mov ebx, eax
add esp, 0xc
mov dword [esp + 0x34], ebx
mov eax, dword [esp + 0x8c]
push 0
push eax
push ebx
call dword [ebx + 0x24]
add esp, 0xc
mov ecx, dword [esi]
push 0x8b4ad8
push 0x64
mov eax, dword [ecx + 4]
push eax
call dword [eax + 0x10]
mov edx, dword [esi]
mov edi, eax
add esp, 0xc
mov ecx, dword [edx + 4]
mov eax, dword [ecx + 8]
cmp byte [eax], 1
je 0x78f794
cmp byte [eax + 0x18], 1
je 0x78ebb6
mov edx, dword [eax + 0x20]
test edx, edx
jne 0x78e605
test ebp, ebp
jne 0x78e5fb
mov edx, dword [esi + 0x1a8]
push str.token_AUX_SYMBOL_COMMA
push ecx
push edx
call fcn.007bb030
mov ebp, eax
add esp, 0xc
mov dword [esp + 0x38], ebp
push 0
push edi
push ebp
call dword [ebp + 0x24]
add esp, 0xc
mov eax, dword [esi]
push 0
push 0x8b4af8
mov ecx, dword [eax + 4]
mov edx, dword [ecx + 8]
mov eax, dword [edx + 0xc]
push eax
call dword [eax + 0x14]
lea eax, [esp + 0x138]
push esi
push eax
call fcn.007982a0
mov ecx, dword [eax]
mov dword [esp + 0x30], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0x34], edx
mov ebp, dword [eax + 8]
mov eax, dword [esi]
mov ecx, dword [eax + 4]
mov edx, dword [ecx + 8]
mov eax, dword [edx + 0xc]
push eax
call dword [eax + 0xc]
mov eax, dword [esi]
add esp, 0x18
mov ecx, dword [eax + 4]
mov eax, dword [ecx + 8]
cmp byte [eax], 1
je 0x78f794
cmp byte [eax + 0x18], 1
je 0x78ebb6
mov edx, dword [eax + 0x20]
test edx, edx
jne 0x78e696
test ebx, ebx
jne 0x78e68c
mov edx, dword [esi + 0x1a8]
push str.rule_expression
push ecx
push edx
call fcn.007bb2a0
mov ebx, eax
add esp, 0xc
mov dword [esp + 0x34], ebx
push 0
push ebp
push ebx
call dword [ebx + 0x24]
add esp, 0xc
mov eax, dword [esi]
push 1
mov edi, 2
mov ecx, dword [eax + 8]
mov eax, dword [ecx + 8]
push eax
call dword [eax + 0x18]
add esp, 8
cmp eax, 0x26
jne 0x78e6b6
mov edi, 1
dec edi
jne 0x78e710
mov edx, dword [esi]
push 0x8b4b18
push 0x26
mov eax, dword [edx + 4]
push eax
call dword [eax + 0x10]
mov edi, eax
mov eax, dword [esi]
add esp, 0xc
mov ecx, dword [eax + 4]
mov eax, dword [ecx + 8]
cmp byte [eax], 1
je 0x78f794
cmp byte [eax + 0x18], 1
je 0x78ebb6
mov edx, dword [eax + 0x20]
test edx, edx
jne 0x78e710
mov edx, dword [esi + 0x1a8]
push str.token_STATEMENT_THEN
push ecx
push edx
call fcn.007bb030
push 0
push edi
push eax
mov dword [esp + 0x68], eax
call dword [eax + 0x24]
add esp, 0x18
mov eax, dword [esi]
push 0
push 0x8b4b38
mov ecx, dword [eax + 4]
mov edx, dword [ecx + 8]
mov eax, dword [edx + 0xc]
push eax
call dword [eax + 0x14]
lea eax, [esp + 0xd8]
push esi
push eax
call fcn.00783b20
mov ecx, dword [eax]
mov dword [esp + 0x30], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0x34], edx
mov edi, dword [eax + 8]
mov eax, dword [esi]
mov ecx, dword [eax + 4]
mov edx, dword [ecx + 8]
mov eax, dword [edx + 0xc]
push eax
call dword [eax + 0xc]
mov eax, dword [esi]
add esp, 0x18
mov ecx, dword [eax + 4]
mov eax, dword [ecx + 8]
cmp byte [eax], 1
je 0x78f794
cmp byte [eax + 0x18], 1
je 0x78ebb6
mov edx, dword [eax + 0x20]
test edx, edx
jne 0x78e798
mov edx, dword [esi + 0x1a8]
push str.rule_statementSeparator
push ecx
push edx
call fcn.007bb2a0
push 0
push edi
push eax
mov dword [esp + 0x6c], eax
call dword [eax + 0x24]
add esp, 0x18
mov eax, dword [esi]
push 1
mov edi, 2
mov ecx, dword [eax + 8]
mov eax, dword [ecx + 8]
push eax
call dword [eax + 0x18]
add esp, 8
cmp eax, 8
jl 0x78e7bc
cmp eax, 0xb
jle 0x78e878
cmp eax, 0x1e
je 0x78e878
cmp eax, 0x30
je 0x78e878
cmp eax, 0x78
je 0x78e878
cmp eax, 0x8f
jl 0x78e7e9
cmp eax, 0x90
jle 0x78e878
cmp eax, 0x65
jne 0x78e7fd
mov eax, dword [0x1688a38]
test eax, eax
jle 0x78e87d
jmp 0x78e878
cmp eax, 4
jl 0x78e807
cmp eax, 7
jle 0x78e878
cmp eax, 0xc
je 0x78e878
cmp eax, 0xe
je 0x78e878
cmp eax, 0x10
jl 0x78e81b
cmp eax, 0x11
jle 0x78e878
cmp eax, 0x16
jl 0x78e825
cmp eax, 0x19
jle 0x78e878
cmp eax, 0x1b
je 0x78e878
cmp eax, 0x24
jl 0x78e834
cmp eax, 0x25
jle 0x78e878
cmp eax, 0x2a
je 0x78e878
cmp eax, 0x2c
je 0x78e878
cmp eax, 0x2f
je 0x78e878
cmp eax, 0x32
je 0x78e878
cmp eax, 0x34
je 0x78e878
cmp eax, 0x43
jl 0x78e857
cmp eax, 0x44
jle 0x78e878
cmp eax, 0x8b
jl 0x78e865
cmp eax, 0x8c
jle 0x78e878
cmp eax, 0x69
je 0x78e86f
cmp eax, 0x77
jne 0x78e87d
mov eax, dword [0x1688a30]
test eax, eax
jne 0x78e87d
mov edi, 1
mov eax, edi
dec eax
jne 0x78e922
mov edx, dword [esi]
push 0
push 0x8b4b58
mov eax, dword [edx + 4]
mov ecx, dword [eax + 8]
mov eax, dword [ecx + 0xc]
push eax
call dword [eax + 0x14]
lea edx, [esp + 0x120]
push esi
push edx
call fcn.00781ea0
mov ecx, dword [eax]
mov dword [esp + 0x30], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0x34], edx
mov edi, dword [eax + 8]
mov eax, dword [esi]
mov ecx, dword [eax + 4]
mov edx, dword [ecx + 8]
mov eax, dword [edx + 0xc]
push eax
call dword [eax + 0xc]
mov eax, dword [esi]
add esp, 0x18
mov ecx, dword [eax + 4]
mov eax, dword [ecx + 8]
cmp byte [eax], 1
je 0x78f794
cmp byte [eax + 0x18], 1
je 0x78ebb6
mov edx, dword [eax + 0x20]
test edx, edx
jne 0x78e798
mov eax, dword [esp + 0x30]
test eax, eax
jne 0x78e913
push str.rule_statement
push ecx
mov ecx, dword [esi + 0x1a8]
push ecx
call fcn.007bb2a0
add esp, 0xc
mov dword [esp + 0x30], eax
push 0
push edi
push eax
call dword [eax + 0x24]
add esp, 0xc
jmp 0x78e798
mov edx, dword [esi]
push 1
mov edi, 2
mov eax, dword [edx + 8]
mov eax, dword [eax + 8]
push eax
call dword [eax + 0x18]
add esp, 8
cmp eax, 0x27
jne 0x78e942
mov edi, 1
dec edi
jne 0x78e9e5
mov ecx, dword [esi]
push 0
push 0x8b4b70
mov edx, dword [ecx + 4]
mov eax, dword [edx + 8]
mov eax, dword [eax + 0xc]
push eax
call dword [eax + 0x14]
lea ecx, [esp + 0xf0]
push esi
push ecx
call fcn.00790670
mov edx, dword [eax]
mov dword [esp + 0x30], edx
mov edx, dword [esi]
mov ecx, dword [eax + 4]
mov dword [esp + 0x34], ecx
mov edi, dword [eax + 8]
mov eax, dword [edx + 4]
mov ecx, dword [eax + 8]
mov eax, dword [ecx + 0xc]
push eax
call dword [eax + 0xc]
mov edx, dword [esi]
add esp, 0x18
mov ecx, dword [edx + 4]
mov eax, dword [ecx + 8]
cmp byte [eax], 1
je 0x78f794
cmp byte [eax + 0x18], 1
je 0x78ebb6
mov edx, dword [eax + 0x20]
test edx, edx
jne 0x78e922
mov eax, dword [esp + 0x2c]
test eax, eax
jne 0x78e9d6
mov eax, dword [esi + 0x1a8]
push str.rule_elseIf
push ecx
push eax
call fcn.007bb2a0
add esp, 0xc
mov dword [esp + 0x2c], eax
push 0
push edi
push eax
call dword [eax + 0x24]
add esp, 0xc
jmp 0x78e922
mov ecx, dword [esi]
push 1
mov edi, 2
mov edx, dword [ecx + 8]
mov eax, dword [edx + 8]
push eax
call dword [eax + 0x18]
add esp, 8
cmp eax, 0x28
jne 0x78ea05
mov edi, 1
dec edi
jne 0x78ea94
mov eax, dword [esi]
push 0
push 0x8b4b88
mov ecx, dword [eax + 4]
mov edx, dword [ecx + 8]
mov eax, dword [edx + 0xc]
push eax
call dword [eax + 0x14]
lea eax, [esp + 0x9c]
push esi
push eax
call fcn.00790da0
mov ecx, dword [eax]
mov dword [esp + 0x30], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0x34], edx
mov edi, dword [eax + 8]
mov eax, dword [esi]
mov ecx, dword [eax + 4]
mov edx, dword [ecx + 8]
mov eax, dword [edx + 0xc]
push eax
call dword [eax + 0xc]
mov eax, dword [esi]
add esp, 0x18
mov ecx, dword [eax + 4]
mov eax, dword [ecx + 8]
cmp byte [eax], 1
je 0x78f794
cmp byte [eax + 0x18], 1
je 0x78ebb6
mov edx, dword [eax + 0x20]
test edx, edx
jne 0x78ea94
mov edx, dword [esi + 0x1a8]
push str.rule_elseRule
push ecx
push edx
call fcn.007bb2a0
push 0
push edi
push eax
mov dword [esp + 0x54], eax
call dword [eax + 0x24]
add esp, 0x18
mov eax, dword [esi]
push 1
mov ecx, dword [eax + 8]
mov eax, dword [ecx + 8]
push eax
call dword [eax + 0x18]
add esp, 8
cmp eax, 0x29
je 0x78eb24
cmp eax, 0x41
je 0x78eb1d
mov edx, dword [esi]
mov eax, dword [edx + 4]
mov ecx, dword [eax + 8]
mov edx, dword [ecx + 0x20]
test edx, edx
jle 0x78eac7
mov byte [ecx + 0x18], 1
jmp 0x78ebb6
push eax
call dword [eax + 0x88]
mov edx, dword [esi]
add esp, 4
mov eax, dword [edx + 4]
mov ecx, dword [eax + 8]
mov edx, dword [ecx + 4]
mov dword [edx], 3
mov eax, dword [esi]
mov ecx, dword [eax + 4]
mov edx, dword [ecx + 8]
mov eax, dword [edx + 4]
mov dword [eax + 8], 0x8bd670
mov ecx, dword [esi]
mov edx, dword [ecx + 4]
mov eax, dword [edx + 8]
mov ecx, dword [eax + 4]
mov dword [ecx + 0x34], 0x49
mov edx, dword [esi]
mov eax, dword [edx + 4]
mov ecx, dword [eax + 8]
mov edx, dword [ecx + 4]
mov dword [edx + 0x38], 0
jmp 0x78f794
mov eax, 2
jmp 0x78eb29
mov eax, 1
dec eax
je 0x78ebf9
dec eax
jne 0x78ec4c
mov eax, dword [esi]
push 0x8b4ba8
push 0x41
mov eax, dword [eax + 4]
push eax
call dword [eax + 0x10]
mov ecx, dword [esi]
mov edi, eax
add esp, 0xc
mov ecx, dword [ecx + 4]
mov eax, dword [ecx + 8]
cmp byte [eax], 1
je 0x78f794
cmp byte [eax + 0x18], 1
je 0x78ebb6
mov edx, dword [eax + 0x20]
test edx, edx
jne 0x78eb8a
mov edx, dword [esi + 0x1a8]
push str.token_CLAUSE_END
push ecx
push edx
call fcn.007bb030
push 0
push edi
push eax
mov dword [esp + 0x78], eax
call dword [eax + 0x24]
add esp, 0x18
mov eax, dword [esi]
push 0x8b4bb8
push 0x24
mov eax, dword [eax + 4]
push eax
call dword [eax + 0x10]
mov ecx, dword [esi]
mov edi, eax
add esp, 0xc
mov ecx, dword [ecx + 4]
mov eax, dword [ecx + 8]
cmp byte [eax], 1
je 0x78f794
cmp byte [eax + 0x18], 1
jne 0x78ebda
mov eax, dword [esp + 0x160]
mov ecx, dword [esp + 0x10]
mov edx, eax
pop edi
pop esi
pop ebp
mov dword [edx], ecx
pop ebx
mov dword [edx + 4], ecx
mov ecx, dword [esp + 8]
mov dword [edx + 8], ecx
add esp, 0x14c
ret
mov edx, dword [eax + 0x20]
test edx, edx
jne 0x78ec4c
mov edx, dword [esi + 0x1a8]
push str.token_STATEMENT_IF
push ecx
push edx
call fcn.007bb030
mov dword [esp + 0x68], eax
jmp 0x78ec42
mov eax, dword [esi]
push 0x8b4b98
push 0x29
mov eax, dword [eax + 4]
push eax
call dword [eax + 0x10]
mov ecx, dword [esi]
mov edi, eax
add esp, 0xc
mov ecx, dword [ecx + 4]
mov eax, dword [ecx + 8]
cmp byte [eax], 1
je 0x78f794
cmp byte [eax + 0x18], 1
je 0x78ebb6
mov edx, dword [eax + 0x20]
test edx, edx
jne 0x78ec4c
mov edx, dword [esi + 0x1a8]
push str.token_STATEMENT_ENDIF
push ecx
push edx
call fcn.007bb030
mov dword [esp + 0x64], eax
push 0
push edi
push eax
call dword [eax + 0x24]
add esp, 0x18
mov eax, dword [esi]
mov eax, dword [eax + 4]
mov ecx, dword [eax + 8]
mov edx, dword [ecx + 0x20]
test edx, edx
jne 0x78f794
mov edx, dword [esi + 0x1a8]
push 0
push str.token_retval
push eax
push edx
call fcn.007bb390
mov edx, dword [esi + 0x1a8]
mov dword [esp + 0x74], eax
mov eax, dword [esi]
push ebp
push str.token_exp4
mov ecx, dword [eax + 4]
push ecx
push edx
call fcn.007bb390
mov ecx, dword [esi]
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0xac]
mov edx, dword [ecx + 4]
push eax
mov eax, dword [esi + 0x1a8]
push str.token_exp3
push edx
push eax
call fcn.007bb390
mov edx, dword [esi]
mov ecx, dword [esp + 0xa4]
mov dword [esp + 0x7c], eax
push ecx
mov eax, dword [edx + 4]
mov ecx, dword [esi + 0x1a8]
push str.token_exp2
push eax
push ecx
call fcn.007bb390
mov edx, dword [esp + 0xc0]
mov dword [esp + 0x88], eax
mov eax, dword [esi]
add esp, 0x40
mov ecx, dword [eax + 4]
push edx
mov edx, dword [esi + 0x1a8]
push str.token_exp1
push ecx
push edx
call fcn.007bb390
mov ebx, eax
mov eax, dword [esi + 0x1a8]
push eax
call dword [eax + 0x10]
mov dword [esp + 0x3c], eax
mov eax, dword [esi + 0x1a8]
push eax
call dword [eax + 0x10]
mov edi, eax
mov eax, dword [esp + 0x5c]
add esp, 0x18
test eax, eax
je 0x78ed2c
push eax
call dword [eax + 0x44]
add esp, 4
mov ecx, dword [esi + 0x1a8]
push edi
push eax
push ecx
call dword [ecx + 0x34]
mov ebp, eax
mov eax, dword [esi + 0x1a8]
push eax
call dword [eax + 0x10]
mov edi, dword [esi + 0x1a8]
add esp, 0x10
push eax
push str.AUX_SYMBOL_LPARENTHESIS
push 0x66
push edi
call dword [edi + 0x4c]
add esp, 0xc
push eax
mov eax, dword [esi + 0x1a8]
push eax
call dword [edi + 0x34]
add esp, 0xc
mov edi, eax
test ebx, ebx
jne 0x78ed74
xor eax, eax
jmp 0x78ed7b
push ebx
call dword [ebx + 0x2c]
add esp, 4
mov ecx, dword [esi + 0x1a8]
push eax
push edi
push ecx
call dword [ecx + 0x1c]
mov eax, dword [esp + 0x54]
add esp, 0xc
test eax, eax
jne 0x78ed96
xor eax, eax
jmp 0x78eda1
mov eax, dword [esp + 0x48]
push eax
call dword [eax + 0x2c]
add esp, 4
mov ecx, dword [esi + 0x1a8]
push eax
push edi
push ecx
call dword [ecx + 0x1c]
mov eax, dword [esp + 0x58]
add esp, 0xc
test eax, eax
jne 0x78edbc
xor eax, eax
jmp 0x78edc7
mov eax, dword [esp + 0x4c]
push eax
call dword [eax + 0x2c]
add esp, 4
mov ecx, dword [esi + 0x1a8]
push eax
push edi
push ecx
call dword [ecx + 0x1c]
mov eax, dword [esp + 0x4c]
add esp, 0xc
test eax, eax
jne 0x78ede2
xor eax, eax
jmp 0x78eded
mov eax, dword [esp + 0x40]
push eax
call dword [eax + 0x2c]
add esp, 4
mov ecx, dword [esi + 0x1a8]
push eax
push edi
push ecx
call dword [ecx + 0x1c]
mov eax, dword [esi + 0x1a8]
push edi
push ebp
push eax
call dword [eax + 0x1c]
mov eax, dword [esp + 0x48]
add esp, 0x18
test eax, eax
je 0x78ee3f
mov edi, dword [esp + 0x30]
push edi
call dword [edi + 0x40]
add esp, 4
test al, al
je 0x78ee38
mov eax, dword [esp + 0x30]
mov edi, dword [esi + 0x1a8]
push eax
call dword [eax + 0x2c]
push eax
push ebp
push edi
call dword [edi + 0x1c]
add esp, 0x10
jmp 0x78ee10
push edi
call dword [edi + 0x20]
add esp, 4
mov edi, dword [esp + 0x2c]
test edi, edi
je 0x78ee76
push edi
call dword [edi + 0x40]
add esp, 4
test al, al
je 0x78ee6f
mov eax, dword [esp + 0x2c]
mov edi, dword [esi + 0x1a8]
push eax
call dword [eax + 0x2c]
push eax
push ebp
push edi
call dword [edi + 0x1c]
mov edi, dword [esp + 0x3c]
add esp, 0x10
jmp 0x78ee47
push edi
call dword [edi + 0x20]
add esp, 4
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x78ee85
push eax
call dword [eax + 0x2c]
add esp, 4
mov ecx, dword [esi + 0x1a8]
push eax
push ebp
push ecx
call dword [ecx + 0x1c]
mov edi, dword [esp + 0x34]
mov eax, dword [esi + 0x1a8]
push ebp
push edi
push eax
call dword [eax + 0x1c]
mov eax, dword [esp + 0x7c]
add esp, 0x18
test eax, eax
mov dword [esp + 0x18], edi
je 0x78eeb7
push eax
call dword [eax + 0x50]
add esp, 4
mov eax, dword [esp + 0x40]
test eax, eax
je 0x78eec6
push eax
call dword [eax + 0x50]
add esp, 4
mov eax, dword [esp + 0x4c]
test eax, eax
je 0x78eed5
push eax
call dword [eax + 0x50]
add esp, 4
mov eax, dword [esp + 0x48]
test eax, eax
je 0x78eee4
push eax
call dword [eax + 0x50]
add esp, 4
test ebx, ebx
je 0x78f794
push ebx
call dword [ebx + 0x50]
add esp, 4
jmp 0x78f794
mov eax, dword [esi + 0x1a8]
push eax
call dword [eax + 0x10]
mov edx, dword [esi]
mov ebx, eax
push 0x8b49b0
push 0x24
mov eax, dword [edx + 4]
mov dword [esp + 0x34], ebx
push eax
call dword [eax + 0x10]
mov ecx, dword [esi]
add esp, 0x10
mov edx, dword [ecx + 4]
mov ecx, dword [edx + 8]
cmp byte [ecx], 1
je 0x78f794
cmp byte [ecx + 0x18], 1
je 0x78ebb6
mov edx, dword [ecx + 0x20]
test edx, edx
jne 0x78ef5d
mov ecx, dword [esi + 0x1a8]
push eax
push ecx
call dword [ecx + 0x40]
mov ecx, dword [esi + 0x1a8]
push ebx
push eax
push ecx
call dword [ecx + 0x34]
mov ebx, eax
add esp, 0x14
mov dword [esp + 0x28], ebx
mov edx, dword [esi]
push 0
push 0x8b49c0
mov eax, dword [edx + 4]
mov ecx, dword [eax + 8]
mov eax, dword [ecx + 0xc]
push eax
call dword [eax + 0x14]
lea edx, [esp + 0xa8]
push esi
push edx
call fcn.00798410
mov ecx, dword [eax]
mov dword [esp + 0x30], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0x34], edx
mov edi, dword [eax + 8]
mov eax, dword [esi]
mov ecx, dword [eax + 4]
mov edx, dword [ecx + 8]
mov eax, dword [edx + 0xc]
push eax
call dword [eax + 0xc]
mov eax, dword [esi]
add esp, 0x18
mov ecx, dword [eax + 4]
mov eax, dword [ecx + 8]
cmp byte [eax], 1
je 0x78f794
cmp byte [eax + 0x18], 1
je 0x78ebb6
mov ecx, dword [eax + 0x20]
test ecx, ecx
jne 0x78efd4
mov eax, dword [esi + 0x1a8]
push edi
push ebx
push eax
call dword [eax + 0x1c]
add esp, 0xc
mov edx, dword [esi]
push 0x8b49e0
push 0x26
mov eax, dword [edx + 4]
push eax
call dword [eax + 0x10]
mov eax, dword [esi]
add esp, 0xc
mov ecx, dword [eax + 4]
mov eax, dword [ecx + 8]
cmp byte [eax], 1
je 0x78f794
cmp byte [eax + 0x18], 1
je 0x78ebb6
mov ecx, dword [eax + 0x20]
test ecx, ecx
jne 0x78f013
mov dword [0x1688a30], 1
mov edx, dword [esi]
push 0
push 0x8b49f0
mov eax, dword [edx + 4]
mov ecx, dword [eax + 8]
mov eax, dword [ecx + 0xc]
push eax
call dword [eax + 0x14]
lea edx, [esp + 0xb4]
push esi
push edx
call fcn.00791300
mov ecx, dword [eax]
mov dword [esp + 0x30], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0x34], edx
mov edi, dword [eax + 8]
mov eax, dword [esi]
mov ecx, dword [eax + 4]
mov edx, dword [ecx + 8]
mov eax, dword [edx + 0xc]
push eax
call dword [eax + 0xc]
mov eax, dword [esi]
add esp, 0x18
mov ecx, dword [eax + 4]
mov eax, dword [ecx + 8]
cmp byte [eax], 1
je 0x78f794
cmp byte [eax + 0x18], 1
je 0x78ebb6
mov ecx, dword [eax + 0x20]
test ecx, ecx
jne 0x78f08a
mov eax, dword [esi + 0x1a8]
push edi
push ebx
push eax
call dword [eax + 0x1c]
add esp, 0xc
mov edx, dword [esi]
push 1
mov edi, 2
mov eax, dword [edx + 8]
mov eax, dword [eax + 8]
push eax
call dword [eax + 0x18]
add esp, 8
cmp eax, 0x27
jne 0x78f0ba
mov ecx, dword [esi]
push edi
mov edx, dword [ecx + 8]
mov eax, dword [edx + 8]
push eax
call dword [eax + 0x18]
add esp, 8
mov edi, 1
dec edi
jne 0x78f12e
mov eax, dword [esi]
push 0
push 0x8b4a00
mov ecx, dword [eax + 4]
mov edx, dword [ecx + 8]
mov eax, dword [edx + 0xc]
push eax
call dword [eax + 0x14]
lea eax, [esp + 0xcc]
push esi
push eax
call fcn.00790670
mov ecx, dword [eax]
mov dword [esp + 0x30], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0x34], edx
mov edi, dword [eax + 8]
mov eax, dword [esi]
mov ecx, dword [eax + 4]
mov edx, dword [ecx + 8]
mov eax, dword [edx + 0xc]
push eax
call dword [eax + 0xc]
mov eax, dword [esi]
add esp, 0x18
mov ecx, dword [eax + 4]
mov eax, dword [ecx + 8]
cmp byte [eax], 1
je 0x78f794
cmp byte [eax + 0x18], 1
je 0x78ebb6
mov ecx, dword [eax + 0x20]
test ecx, ecx
jne 0x78f08a
jmp 0x78f07b
mov edx, dword [esi]
push 1
mov edi, 2
mov eax, dword [edx + 8]
mov eax, dword [eax + 8]
push eax
call dword [eax + 0x18]
add esp, 8
cmp eax, 0x28
jne 0x78f15e
mov ecx, dword [esi]
push edi
mov edx, dword [ecx + 8]
mov eax, dword [edx + 8]
push eax
call dword [eax + 0x18]
add esp, 8
mov edi, 1
dec edi
jne 0x78f1d8
mov eax, dword [esi]
push 0
push 0x8b4a10
mov ecx, dword [eax + 4]
mov edx, dword [ecx + 8]
mov eax, dword [edx + 0xc]
push eax
call dword [eax + 0x14]
lea eax, [esp + 0xe4]
push esi
push eax
call fcn.00790da0
mov ecx, dword [eax]
mov dword [esp + 0x30], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0x34], edx
mov edi, dword [eax + 8]
mov eax, dword [esi]
mov ecx, dword [eax + 4]
mov edx, dword [ecx + 8]
mov eax, dword [edx + 0xc]
push eax
call dword [eax + 0xc]
mov eax, dword [esi]
add esp, 0x18
mov ecx, dword [eax + 4]
mov eax, dword [ecx + 8]
cmp byte [eax], 1
je 0x78f794
cmp byte [eax + 0x18], 1
je 0x78ebb6
mov ecx, dword [eax + 0x20]
test ecx, ecx
jne 0x78f1d8
mov eax, dword [esi + 0x1a8]
push edi
push ebx
push eax
call dword [eax + 0x1c]
add esp, 0xc
mov edx, dword [esi]
mov eax, dword [edx + 4]
mov ecx, dword [eax + 8]
mov eax, dword [ecx + 0x20]
test eax, eax
jne 0x78f794
mov dword [0x1688a30], 0
jmp 0x78f794
mov eax, dword [esi + 0x1a8]
push eax
call dword [eax + 0x10]
mov edx, dword [esi]
mov ebx, eax
push 0x8b48b0
push 0x24
mov eax, dword [edx + 4]
mov dword [esp + 0x34], ebx
push eax
call dword [eax + 0x10]
mov ecx, dword [esi]
add esp, 0x10
mov edx, dword [ecx + 4]
mov ecx, dword [edx + 8]
cmp byte [ecx], 1
je 0x78f794
cmp byte [ecx + 0x18], 1
je 0x78ebb6
mov edx, dword [ecx + 0x20]
test edx, edx
jne 0x78f25f
mov ecx, dword [esi + 0x1a8]
push eax
push ecx
call dword [ecx + 0x40]
mov ecx, dword [esi + 0x1a8]
push ebx
push eax
push ecx
call dword [ecx + 0x34]
mov ebx, eax
add esp, 0x14
mov dword [esp + 0x28], ebx
mov edx, dword [esi]
push 0
push 0x8b48d0
mov eax, dword [edx + 4]
mov ecx, dword [eax + 8]
mov eax, dword [ecx + 0xc]
push eax
call dword [eax + 0x14]
lea edx, [esp + 0xfc]
push esi
push edx
call fcn.00798410
mov ecx, dword [eax]
mov dword [esp + 0x30], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0x34], edx
mov edi, dword [eax + 8]
mov eax, dword [esi]
mov ecx, dword [eax + 4]
mov edx, dword [ecx + 8]
mov eax, dword [edx + 0xc]
push eax
call dword [eax + 0xc]
mov eax, dword [esi]
add esp, 0x18
mov ecx, dword [eax + 4]
mov eax, dword [ecx + 8]
cmp byte [eax], 1
je 0x78f794
cmp byte [eax + 0x18], 1
je 0x78ebb6
mov ecx, dword [eax + 0x20]
test ecx, ecx
jne 0x78f2d6
mov eax, dword [esi + 0x1a8]
push edi
push ebx
push eax
call dword [eax + 0x1c]
add esp, 0xc
mov edx, dword [esi]
push 1
mov edi, 2
mov eax, dword [edx + 8]
mov eax, dword [eax + 8]
push eax
call dword [eax + 0x18]
add esp, 8
cmp eax, 0x26
jne 0x78f2f6
mov edi, 1
dec edi
jne 0x78f327
mov ecx, dword [esi]
push 0x8b48f0
push 0x26
mov eax, dword [ecx + 4]
push eax
call dword [eax + 0x10]
mov edx, dword [esi]
add esp, 0xc
mov eax, dword [edx + 4]
mov eax, dword [eax + 8]
cmp byte [eax], 1
je 0x78f794
cmp byte [eax + 0x18], 1
je 0x78ebb6
mov edx, dword [esi]
push 0
push 0x8b4910
mov eax, dword [edx + 4]
mov ecx, dword [eax + 8]
mov eax, dword [ecx + 0xc]
push eax
call dword [eax + 0x14]
lea edx, [esp + 0x114]
push esi
push edx
call fcn.00783b20
mov eax, dword [esi]
mov ecx, dword [eax + 4]
mov edx, dword [ecx + 8]
mov eax, dword [edx + 0xc]
push eax
call dword [eax + 0xc]
mov eax, dword [esi]
add esp, 0x18
mov ecx, dword [eax + 4]
mov eax, dword [ecx + 8]
cmp byte [eax], 1
je 0x78f794
cmp byte [eax + 0x18], 1
je 0x78ebb6
mov edx, dword [esi]
push 1
mov edi, 2
mov eax, dword [edx + 8]
mov eax, dword [eax + 8]
push eax
call dword [eax + 0x18]
add esp, 8
cmp eax, 8
jl 0x78f39c
cmp eax, 0xb
jle 0x78f458
cmp eax, 0x1e
je 0x78f458
cmp eax, 0x30
je 0x78f458
cmp eax, 0x78
je 0x78f458
cmp eax, 0x8f
jl 0x78f3c9
cmp eax, 0x90
jle 0x78f458
cmp eax, 0x65
jne 0x78f3dd
mov eax, dword [0x1688a38]
test eax, eax
jle 0x78f45d
jmp 0x78f458
cmp eax, 4
jl 0x78f3e7
cmp eax, 7
jle 0x78f458
cmp eax, 0xc
je 0x78f458
cmp eax, 0xe
je 0x78f458
cmp eax, 0x10
jl 0x78f3fb
cmp eax, 0x11
jle 0x78f458
cmp eax, 0x16
jl 0x78f405
cmp eax, 0x19
jle 0x78f458
cmp eax, 0x1b
je 0x78f458
cmp eax, 0x24
jl 0x78f414
cmp eax, 0x25
jle 0x78f458
cmp eax, 0x2a
je 0x78f458
cmp eax, 0x2c
je 0x78f458
cmp eax, 0x2f
je 0x78f458
cmp eax, 0x32
je 0x78f458
cmp eax, 0x34
je 0x78f458
cmp eax, 0x43
jl 0x78f437
cmp eax, 0x44
jle 0x78f458
cmp eax, 0x8b
jl 0x78f445
cmp eax, 0x8c
jle 0x78f458
cmp eax, 0x69
je 0x78f44f
cmp eax, 0x77
jne 0x78f45d
mov eax, dword [0x1688a30]
test eax, eax
jne 0x78f45d
mov edi, 1
mov eax, edi
dec eax
jne 0x78f4e6
mov ecx, dword [esi]
push 0
push 0x8b4930
mov edx, dword [ecx + 4]
mov eax, dword [edx + 8]
mov eax, dword [eax + 0xc]
push eax
call dword [eax + 0x14]
lea ecx, [esp + 0x12c]
push esi
push ecx
call fcn.00781ea0
mov edx, dword [eax]
mov dword [esp + 0x30], edx
mov edx, dword [esi]
mov ecx, dword [eax + 4]
mov dword [esp + 0x34], ecx
mov edi, dword [eax + 8]
mov eax, dword [edx + 4]
mov ecx, dword [eax + 8]
mov eax, dword [ecx + 0xc]
push eax
call dword [eax + 0xc]
mov edx, dword [esi]
add esp, 0x18
mov eax, dword [edx + 4]
mov eax, dword [eax + 8]
cmp byte [eax], 1
je 0x78f794
cmp byte [eax + 0x18], 1
je 0x78ebb6
mov ecx, dword [eax + 0x20]
test ecx, ecx
jne 0x78f378
mov eax, dword [esi + 0x1a8]
push edi
push ebx
push eax
call dword [eax + 0x1c]
add esp, 0xc
jmp 0x78f378
mov ecx, dword [esi]
push 1
mov edi, 2
mov edx, dword [ecx + 8]
mov eax, dword [edx + 8]
push eax
call dword [eax + 0x18]
add esp, 8
cmp eax, 0x27
jne 0x78f506
mov edi, 1
dec edi
jne 0x78f58d
mov eax, dword [esi]
push 0
push 0x8b4948
mov ecx, dword [eax + 4]
mov edx, dword [ecx + 8]
mov eax, dword [edx + 0xc]
push eax
call dword [eax + 0x14]
lea eax, [esp + 0x144]
push esi
push eax
call fcn.00790670
mov ecx, dword [eax]
mov dword [esp + 0x30], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0x34], edx
mov edi, dword [eax + 8]
mov eax, dword [esi]
mov ecx, dword [eax + 4]
mov edx, dword [ecx + 8]
mov eax, dword [edx + 0xc]
push eax
call dword [eax + 0xc]
mov eax, dword [esi]
add esp, 0x18
mov ecx, dword [eax + 4]
mov eax, dword [ecx + 8]
cmp byte [eax], 1
je 0x78f794
cmp byte [eax + 0x18], 1
je 0x78ebb6
mov ecx, dword [eax + 0x20]
test ecx, ecx
jne 0x78f4e6
mov eax, dword [esi + 0x1a8]
push edi
push ebx
push eax
call dword [eax + 0x1c]
add esp, 0xc
jmp 0x78f4e6
mov edx, dword [esi]
push 1
mov edi, 2
mov eax, dword [edx + 8]
mov eax, dword [eax + 8]
push eax
call dword [eax + 0x18]
add esp, 8
cmp eax, 0x28
jne 0x78f5ad
mov edi, 1
dec edi
jne 0x78f627
mov ecx, dword [esi]
push 0
push 0x8b4960
mov edx, dword [ecx + 4]
mov eax, dword [edx + 8]
mov eax, dword [eax + 0xc]
push eax
call dword [eax + 0x14]
lea ecx, [esp + 0x15c]
push esi
push ecx
call fcn.00790da0
mov edx, dword [eax]
mov dword [esp + 0x30], edx
mov edx, dword [esi]
mov ecx, dword [eax + 4]
mov dword [esp + 0x34], ecx
mov edi, dword [eax + 8]
mov eax, dword [edx + 4]
mov ecx, dword [eax + 8]
mov eax, dword [ecx + 0xc]
push eax
call dword [eax + 0xc]
mov edx, dword [esi]
add esp, 0x18
mov eax, dword [edx + 4]
mov eax, dword [eax + 8]
cmp byte [eax], 1
je 0x78f794
cmp byte [eax + 0x18], 1
je 0x78ebb6
mov ecx, dword [eax + 0x20]
test ecx, ecx
jne 0x78f627
mov eax, dword [esi + 0x1a8]
push edi
push ebx
push eax
call dword [eax + 0x1c]
add esp, 0xc
mov edx, dword [esi]
push 1
mov eax, dword [edx + 8]
mov eax, dword [eax + 8]
push eax
call dword [eax + 0x18]
add esp, 8
cmp eax, 0x29
je 0x78f6a5
cmp eax, 0x41
je 0x78f69e
mov ecx, dword [esi]
mov eax, dword [ecx + 4]
mov ecx, dword [eax + 8]
mov edx, dword [ecx + 0x20]
test edx, edx
jle 0x78f65a
mov byte [ecx + 0x18], 1
jmp 0x78ebb6
push eax
call dword [eax + 0x88]
mov edx, dword [esi]
add esp, 4
mov eax, dword [edx + 4]
mov ecx, dword [eax + 8]
mov edx, dword [ecx + 4]
mov dword [edx], 3
mov eax, dword [esi]
mov ecx, dword [eax + 4]
mov edx, dword [ecx + 8]
mov eax, dword [edx + 4]
mov dword [eax + 8], 0x8bd670
mov ecx, dword [esi]
mov edx, dword [ecx + 4]
mov eax, dword [edx + 8]
mov ecx, dword [eax + 4]
mov dword [ecx + 0x34], 0x42
jmp 0x78eb06
mov eax, 2
jmp 0x78f6aa
mov eax, 1
dec eax
je 0x78f710
dec eax
jne 0x78f794
mov eax, dword [esi]
push 0x8b4980
push 0x41
mov eax, dword [eax + 4]
push eax
call dword [eax + 0x10]
mov ecx, dword [esi]
add esp, 0xc
mov eax, dword [ecx + 4]
mov ecx, dword [eax + 8]
cmp byte [ecx], 1
je 0x78f794
cmp byte [ecx + 0x18], 1
je 0x78ebb6
push 0x8b4990
push 0x24
push eax
call dword [eax + 0x10]
mov edx, dword [esi]
add esp, 0xc
mov eax, dword [edx + 4]
mov eax, dword [eax + 8]
cmp byte [eax], 1
je 0x78f794
cmp byte [eax + 0x18], 1
jne 0x78f794
jmp 0x78ebb6
mov edx, dword [esi]
push 0x8b4970
push 0x29
mov eax, dword [edx + 4]
push eax
call dword [eax + 0x10]
mov eax, dword [esi]
add esp, 0xc
mov ecx, dword [eax + 4]
mov eax, dword [ecx + 8]
jmp 0x78f6f8
mov edx, dword [esi]
mov eax, dword [edx + 4]
mov ecx, dword [eax + 8]
cmp dword [ecx + 0x20], ebx
jle 0x78f743
mov byte [ecx + 0x18], 1
jmp 0x78ebb6
push eax
call dword [eax + 0x88]
mov edx, dword [esi]
add esp, 4
mov eax, dword [edx + 4]
mov ecx, dword [eax + 8]
mov edx, dword [ecx + 4]
mov dword [edx], 3
mov eax, dword [esi]
mov ecx, dword [eax + 4]
mov edx, dword [ecx + 8]
mov eax, dword [edx + 4]
mov dword [eax + 8], 0x8bd670
mov ecx, dword [esi]
mov edx, dword [ecx + 4]
mov eax, dword [edx + 8]
mov ecx, dword [eax + 4]
mov dword [ecx + 0x34], 0x4a
mov edx, dword [esi]
mov eax, dword [edx + 4]
mov ecx, dword [eax + 8]
mov edx, dword [ecx + 4]
mov dword [edx + 0x38], 1
mov eax, dword [esi]
push 0xffffffffffffffff
mov eax, dword [eax + 8]
push eax
call dword [eax + 0x14]
mov edi, eax
mov eax, dword [esi]
add esp, 8
mov ecx, dword [eax + 4]
mov edx, dword [ecx + 8]
mov ecx, dword [edx + 0x20]
test ecx, ecx
jne 0x78f891
mov eax, dword [eax + 8]
push 0xffffffffffffffff
push eax
call dword [eax + 0x14]
mov ecx, dword [esp + 0x30]
mov edi, eax
mov eax, dword [esi + 0x1a8]
push ecx
push eax
call dword [eax + 0x38]
mov ebx, dword [esp + 0x20]
mov ebp, eax
mov eax, dword [esi + 0x1a8]
push edi
push ebx
push ebp
push eax
call dword [eax + 0x90]
mov eax, dword [esp + 0x78]
add esp, 0x20
test eax, eax
je 0x78f7f9
push eax
call dword [eax + 0x50]
add esp, 4
mov eax, dword [esp + 0x44]
test eax, eax
je 0x78f808
push eax
call dword [eax + 0x50]
add esp, 4
mov eax, dword [esp + 0x60]
test eax, eax
je 0x78f817
push eax
call dword [eax + 0x50]
add esp, 4
mov eax, dword [esp + 0x38]
test eax, eax
je 0x78f826
push eax
call dword [eax + 0x50]
add esp, 4
mov eax, dword [esp + 0x5c]
test eax, eax
je 0x78f835
push eax
call dword [eax + 0x50]
add esp, 4
mov eax, dword [esp + 0x50]
test eax, eax
je 0x78f844
push eax
call dword [eax + 0x50]
add esp, 4
mov eax, dword [esp + 0x34]
test eax, eax
je 0x78f853
push eax
call dword [eax + 0x50]
add esp, 4
mov eax, dword [esp + 0x30]
test eax, eax
je 0x78f862
push eax
call dword [eax + 0x50]
add esp, 4
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x78f871
push eax
call dword [eax + 0x50]
add esp, 4
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x78f880
push eax
call dword [eax + 0x50]
add esp, 4
mov eax, dword [esp + 0x54]
test eax, eax
je 0x78f899
push eax
call dword [eax + 0x50]
add esp, 4
jmp 0x78f899
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 0x18]
mov edx, dword [esi]
mov eax, dword [edx + 4]
mov ecx, dword [eax + 8]
cmp byte [ecx], 1
jne 0x78f8eb
push eax
call dword [eax + 0x24]
mov edx, dword [esi]
mov eax, dword [edx + 4]
push eax
call dword [eax + 0x30]
mov eax, dword [esi]
mov ebp, dword [esi + 0x1a8]
add esp, 8
mov ecx, dword [eax + 8]
mov eax, dword [eax + 4]
mov edx, dword [eax + 8]
mov eax, dword [edx + 4]
push eax
push 0xffffffffffffffff
push ecx
call dword [ecx + 0x14]
mov ecx, dword [esi]
add esp, 8
mov edx, dword [ecx + 8]
push eax
mov eax, dword [esi + 0x1a8]
push ebx
push edx
push eax
call dword [ebp + 0x2c]
add esp, 0x14
mov ebp, eax
mov ecx, dword [esi]
mov eax, dword [ecx + 4]
mov edx, dword [eax + 8]
mov ecx, dword [edx + 0x20]
test ecx, ecx
jle 0x78f908
mov ecx, dword [esp + 0x68]
push ecx
push 0x2b
push eax
call dword [eax + 0x78]
add esp, 0xc
mov eax, dword [esp + 0x160]
mov edx, eax
mov dword [edx], ebx
mov dword [edx + 4], edi
pop edi
pop esi
mov dword [edx + 8], ebp
pop ebp
pop ebx
add esp, 0x14c
ret