Function at 0x67957c
Capabilities:
Resolve function by parsing pe exports
Write file on windows

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x368
mov eax, dword [0x43a400]
xor eax, esp
mov dword [esp + 0x364], eax
mov eax, edx
mov dword [esp + 0x78], ecx
mov edx, dword [ebp + 0x14]
mov dword [esp + 0x154], edx
mov edx, dword [ebp + 0x18]
mov dword [esp + 0x144], edx
mov edx, dword [ebp + 0x1c]
mov dword [esp + 0x128], edx
mov edx, dword [ebp + 0x20]
mov ecx, dword [ebp + 8]
mov dword [esp + 0xe8], edx
mov edx, dword [ebp + 0x24]
mov dword [esp + 0x150], edx
mov edx, dword [ebp + 0x28]
mov dword [esp + 0x130], edx
mov edx, dword [ebp + 0x2c]
mov dword [esp + 0x148], edx
mov edx, dword [ebp + 0x30]
mov dword [esp + 0x138], edx
mov edx, dword [ebp + 0x40]
mov dword [esp + 0x13c], edx
mov edx, dword [ebp + 0x44]
mov dword [esp + 0x120], edx
mov edx, dword [ebp + 0x48]
mov dword [esp + 0xd8], edx
mov edx, dword [ebp + 0x4c]
mov dword [esp + 0x124], edx
mov edx, dword [ebp + 0x50]
mov dword [esp + 0x12c], edx
mov edx, dword [ebp + 0x58]
mov dword [esp + 0xec], edx
mov edx, dword [ebp + 0x5c]
mov dword [esp + 0xdc], eax
mov dword [esp], ecx
mov dword [esp + 0xe0], edx
push esi
mov esi, dword [ebp + 0x10]
mov dword [esp + 0x144], esi
push edi
test eax, eax
je 0x679667
cmp word [eax + 8], 0
jbe 0x679667
cmp byte [eax + 0xa], 0x2f
mov dword [esp + 0xc4], 1
je 0x679672
mov dword [esp + 0xc4], 0
xor edx, edx
mov dword [esp + 0x38], 0x200
mov dword [esp + 0x3c], edx
lea eax, [esp + 0x168]
or edx, 0xffffffff
mov dword [esp + 0x28], eax
mov dword [esp + 0xdc], edx
or eax, 0xffffffff
or edx, edx
mov dword [esp + 0xbc], eax
mov dword [esp + 0xf8], edx
or eax, eax
or edx, 0xffffffff
mov dword [esp + 0xc0], eax
xor edi, edi
mov dword [esp + 0xec], edx
or eax, 0xffffffff
mov dword [esp + 0xc], edi
or edx, edx
mov dword [esp + 0x7c], eax
mov dword [esp + 0xfc], edx
mov dword [esp + 0xd0], edi
mov dword [esp + 0x60], eax
mov dword [esp + 0x74], edi
mov dword [esp + 0x88], edi
test esi, esi
je 0x6796fb
mov eax, dword [esi + 4]
cmp dword [eax + 0x20], edi
jne 0x6796fb
xor eax, eax
mov dword [esp + 0x48], eax
jmp 0x679703
mov dword [esp + 0x48], 1
movdqa xmm0, xmmword [0x438420]
xor eax, eax
mov edx, dword [ebp + 0xc]
xor edi, edi
mov dword [esp + 0x50], eax
mov dword [esp + 0x6c], eax
mov dword [esp + 0x84], eax
mov dword [esp + 0x70], eax
mov dword [esp + 0x78], eax
mov dword [esp + 0xc8], eax
lea eax, [esp + 0x2c]
push eax
lea eax, [esp + 0x24]
mov dword [esp + 0xdc], 0xffffffff
push eax
lea eax, [esp + 0x70]
mov dword [esp + 0xd4], 0xffffffff
push eax
lea eax, [esp + 0x58]
mov dword [esp + 0xc4], 0xffffffff
push eax
mov dword [esp + 0xe4], 0xffffffff
mov dword [esp + 0x34], edi
mov dword [esp + 0x110], 0xffffffff
mov dword [esp + 0x114], 0xffffffff
mov dword [esp + 0x118], 0xffffffff
mov dword [esp + 0x11c], 0xffffffff
mov dword [esp + 0x120], 0xffffffff
mov dword [esp + 0x124], 0xffffffff
movdqa xmmword [esp + 0xa0], xmm0
mov dword [esp + 0xb0], 0xffffffff
call fcn.0067904c
mov esi, eax
add esp, 0x10
mov dword [esp + 0x54], esi
test esi, esi
js 0x6799cf
mov edi, dword [esp + 8]
jmp 0x6797ec
mov eax, dword [esp + 0x4c]
cmp eax, 0xffffffff
je 0x679a65
test eax, eax
js 0x67999d
mov edx, dword [esp + 0x68]
lea ecx, [edi + eax]
sub edx, eax
call fcn.0066b0dc
mov dword [esp + 0xc], eax
cmp eax, dword [0x443d08]
jne 0x679968
mov edx, dword [esp + 0x20]
lea eax, [esp + 0x44]
mov ecx, edi
push eax
push 0
push 0
lea eax, [esp + 0x4c]
push eax
lea eax, [esp + 0x44]
push eax
call fcn.00678a4c
add esp, 0x14
mov dword [esp + 0x58], eax
test eax, eax
js 0x679a16
mov esi, dword [esp + 0x40]
mov ecx, 0x43eb44
sub esi, dword [esp + 0x34]
add edi, dword [esp + 0x34]
push esi
mov edx, edi
call fcn.0068980c
add esp, 4
test eax, eax
jne 0x679875
mov dword [esp + 0x48], eax
jmp 0x679954
push esi
mov edx, edi
mov ecx, 0x43eb4c
call fcn.0068980c
add esp, 4
test eax, eax
jne 0x679896
mov dword [esp + 0x48], 1
jmp 0x679954
mov ecx, dword [esp + 0x24]
test ecx, ecx
jne 0x6798c8
push 0xc
call fcn.0068a280
add esp, 4
mov dword [esp + 0x24], eax
test eax, eax
je 0x679a00
mov dword [eax], 0
mov dword [eax + 4], 0
mov dword [eax + 8], 0
mov edx, esi
mov ecx, edi
call fcn.0066b0dc
mov edx, dword [esp + 0x24]
mov edi, eax
cmp dword [edx + 8], 0
jne 0x67990a
push 0x14
call fcn.0068a280
mov edx, dword [esp + 0x28]
add esp, 4
mov dword [edx + 8], eax
test eax, eax
jne 0x679903
push 0x43b378
push 1
call fcn.0066aebc
add esp, 8
jmp 0x679954
mov dword [edx + 4], 5
mov eax, dword [edx]
cmp dword [edx + 4], eax
jg 0x67994a
lea esi, [eax*2 + 1]
lea eax, [esi*4]
push eax
push dword [edx + 8]
call fcn.0068a3d6
add esp, 8
test eax, eax
jne 0x679940
push 0x43b394
push 1
call fcn.0066aebc
add esp, 8
jmp 0x679954
mov edx, dword [esp + 0x24]
mov dword [edx + 8], eax
mov dword [edx + 4], esi
mov ecx, dword [edx]
mov eax, dword [edx + 8]
mov dword [eax + ecx*4], edi
inc dword [edx]
cmp dword [esp + 0x44], 0
mov edi, dword [esp + 8]
jne 0x679986
mov edx, dword [esp + 0x58]
jmp 0x679823
mov ecx, dword [esp + 0xc8]
mov edx, 1
cmp eax, dword [0x443ce4]
cmove ecx, edx
mov dword [esp + 0xc8], ecx
jmp 0x67998e
mov esi, dword [esp + 0x54]
mov eax, dword [esp + 0xc]
mov ecx, eax
call fcn.0066b1cc
mov dword [esp + 0xc], 0
lea eax, [esp + 0x2c]
mov edx, esi
push eax
lea eax, [esp + 0x24]
mov ecx, edi
push eax
lea eax, [esp + 0x70]
push eax
lea eax, [esp + 0x58]
push eax
call fcn.0067904c
mov esi, eax
mov dword [esp + 0x64], eax
add esp, 0x10
test esi, esi
jns 0x6797ec
mov edi, dword [esp + 0x24]
push 0x43eb00
push 1
call fcn.0066aebc
add esp, 8
test edi, edi
je 0x6799e9
mov ecx, edi
call fcn.0066b49c
or eax, 0xffffffff
pop edi
pop esi
mov ecx, dword [esp + 0x364]
xor ecx, esp
call fcn.0068a1f9
mov esp, ebp
pop ebp
ret
push 0x43eb58
push 1
xor edi, edi
call fcn.0066aebc
add esp, 8
jmp 0x67a578
push 0x43eb24
push 1
call fcn.0066aebc
add esp, 8
test byte [0x43fedc], 1
je 0x679a51
mov eax, dword [0x443d10]
test eax, eax
je 0x679a51
mov ecx, dword [esp + 0x20]
push eax
mov eax, dword [esp + 0x30]
sub eax, ecx
push 1
push eax
lea eax, [edi + ecx]
push eax
call fcn.0068b860
add esp, 0x10
push 0x43eb40
push 1
call fcn.0066aebc
add esp, 8
jmp 0x67a574
mov esi, dword [esp + 8]
lea eax, [esp + 0x2c]
mov edx, dword [ebp + 0xc]
mov ecx, esi
push eax
lea eax, [esp + 0x24]
push eax
lea eax, [esp + 0x70]
push eax
lea eax, [esp + 0x58]
push eax
call fcn.0067904c
add esp, 0x10
mov dword [esp + 0x58], eax
test eax, eax
js 0x67a549
mov edi, dword [esp + 0x90]
mov dword [esp + 0x10], edi
jmp 0x679aac
mov eax, dword [esp + 0x4c]
cmp eax, 0xffffffff
je 0x67accc
test eax, eax
jns 0x679ade
push 0x43eb9c
push 2
call fcn.0066aebc
add esp, 8
cmp dword [0x43f03c], 0
je 0x67a558
jmp 0x67a519
mov edx, dword [esp + 0x68]
lea ecx, [esi + eax]
sub edx, eax
mov dword [esp + 0x64], ecx
call fcn.0066b0dc
mov ecx, eax
mov dword [esp + 0xc], ecx
cmp ecx, dword [0x443ccc]
jne 0x679c10
mov esi, dword [esp + 0x20]
lea eax, [esp + 0x44]
mov edi, dword [esp + 8]
mov edx, esi
push eax
push 0
push 0
lea eax, [esp + 0x4c]
mov ecx, edi
push eax
lea eax, [esp + 0x44]
push eax
call fcn.00678a4c
add esp, 0x14
mov dword [esp + 0x30], eax
test eax, eax
js 0x679bc0
lea esp, [esp]
mov esi, dword [esp + 0x40]
mov ecx, 0x43ebe4
sub esi, dword [esp + 0x34]
add edi, dword [esp + 0x34]
push esi
mov edx, edi
call fcn.0068980c
add esp, 4
test eax, eax
jne 0x679b62
mov dword [esp + 0x48], eax
jmp 0x679b84
push esi
mov edx, edi
mov ecx, 0x43ebec
call fcn.0068980c
mov ecx, dword [esp + 0x4c]
add esp, 4
test eax, eax
mov eax, 1
cmove ecx, eax
mov dword [esp + 0x48], ecx
cmp dword [esp + 0x44], 0
jne 0x67a4fe
mov edi, dword [esp + 8]
lea eax, [esp + 0x44]
mov edx, dword [esp + 0x30]
mov ecx, edi
push eax
push 0
push 0
lea eax, [esp + 0x4c]
push eax
lea eax, [esp + 0x44]
push eax
call fcn.00678a4c
add esp, 0x14
mov dword [esp + 0x30], eax
test eax, eax
jns 0x679b3c
mov esi, dword [esp + 0x20]
push 0x43ebbc
push 2
call fcn.0066aebc
add esp, 8
test byte [0x43fedc], 2
je 0x679bf7
mov eax, dword [0x443d10]
test eax, eax
je 0x679bf7
push eax
mov eax, dword [esp + 0x30]
sub eax, esi
push 1
push eax
lea eax, [edi + esi]
push eax
call fcn.0068b860
add esp, 0x10
push 0x43ebe0
push 2
call fcn.0066aebc
mov dword [esp + 0x50], 0
jmp 0x67a4fb
cmp ecx, dword [0x443ca0]
jne 0x679d0a
mov esi, dword [esp + 0x20]
mov edx, esi
mov edi, dword [esp + 8]
mov ecx, edi
call fcn.006787cc
test eax, eax
jns 0x679c85
push 0x43ebf8
push 2
call fcn.0066aebc
add esp, 8
test byte [0x43fedc], 2
je 0x679c68
mov eax, dword [0x443d10]
test eax, eax
je 0x679c68
push eax
mov eax, dword [esp + 0x30]
sub eax, esi
push 1
push eax
lea eax, [edi + esi]
push eax
call fcn.0068b860
add esp, 0x10
push 0x43ec1c
push 2
call fcn.0066aebc
add esp, 8
mov esi, edi
or eax, 0xffffffff
mov dword [esp + 0x7c], eax
jmp 0x67a502
call fcn.0068aa21
push 0xa
add edi, esi
mov dword [eax], 0
lea eax, [esp + 0x60]
push eax
push edi
call fcn.0068b49b
add esp, 0xc
mov dword [esp + 0x7c], eax
call fcn.0068aa21
cmp dword [eax], 0x22
je 0x679cba
cmp dword [esp + 0x5c], edi
ja 0x67a4fe
push 0x43ec20
push 2
call fcn.0066aebc
add esp, 8
test byte [0x43fedc], 2
je 0x679cee
mov eax, dword [0x443d10]
test eax, eax
je 0x679cee
push eax
mov eax, dword [esp + 0x30]
push 1
sub eax, esi
push eax
push edi
call fcn.0068b860
add esp, 0x10
push 0x43ec44
push 2
call fcn.0066aebc
mov dword [esp + 0x84], 0xffffffff
jmp 0x67a4fb
cmp dword [esp + 0xc4], 0
mov esi, dword [0x443cc4]
jne 0x679de9
cmp ecx, dword [0x443cd8]
je 0x679df1
cmp ecx, dword [0x443c88]
jne 0x679f33
mov eax, dword [0x443bac]
mov edi, dword [esp + 0x2c]
mov dword [esp + 0x30], edi
test eax, eax
je 0x679d8d
cmp eax, 1
jne 0x67a4fe
cmp dword [esp + 0xe4], 0
mov esi, dword [esp + 8]
je 0x67a502
mov ecx, dword [esp + 0x20]
mov eax, edi
sub eax, ecx
push eax
lea eax, [esi + ecx]
push eax
mov eax, dword [esp + 0xec]
movzx edx, word [eax + 8]
lea ecx, [eax + 0xa]
call fcn.0067941c
add esp, 8
test eax, eax
je 0x67a502
mov ecx, dword [esp + 0x38]
mov esi, dword [esp + 0x3c]
lea eax, [ecx - 2]
cmp esi, eax
jle 0x679e68
mov edx, dword [esp + 0x28]
jmp 0x679dac
lea edi, [ecx + ecx]
cmp edi, ecx
jle 0x67ac3c
lea eax, [esp + 0x168]
push edi
cmp edx, eax
jne 0x679e2e
call fcn.0068a280
mov esi, eax
add esp, 4
test esi, esi
je 0x67ac3c
push dword [esp + 0x38]
mov eax, dword [esp + 0x2c]
push eax
push esi
call fcn.00691a9c
add esp, 0xc
jmp 0x679e41
cmp ecx, esi
jne 0x679d2a
cmp dword [esp + 0xe8], 0
je 0x67a4fe
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x20]
sub edx, eax
js 0x67ac2c
mov esi, dword [esp + 8]
lea ecx, [esi + eax]
call fcn.0066af0c
mov edi, eax
mov dword [esp + 0x6c], edi
test edi, edi
je 0x67ac32
jmp 0x67a502
push edx
call fcn.0068a3d6
mov esi, eax
add esp, 8
test esi, esi
je 0x67ac3c
mov ecx, edi
mov edx, esi
mov dword [esp + 0x38], ecx
mov dword [esp + 0x28], edx
test esi, esi
je 0x67a574
mov esi, dword [esp + 0x3c]
lea eax, [edi - 2]
cmp esi, eax
jg 0x679dac
mov edi, dword [esp + 0x30]
mov eax, dword [esp + 0x28]
mov word [esi + eax], 0xa0d
add esi, 2
sub edi, dword [esp + 0x4c]
mov dword [esp + 0x3c], esi
mov dword [esp + 0x30], edi
xor ecx, ecx
mov edx, esi
test esi, esi
js 0x679ec0
test edi, edi
jle 0x679ea9
add esi, eax
cmp edx, dword [esp + 0x38]
jge 0x679ebc
mov eax, dword [esp + 0x64]
inc edx
mov al, byte [ecx + eax]
mov byte [esi + ecx], al
inc ecx
cmp ecx, edi
jl 0x679e8f
mov eax, dword [esp + 0x28]
cmp edx, dword [esp + 0x38]
jge 0x679ec0
test edx, edx
js 0x679ec0
mov dword [esp + 0x3c], edx
jmp 0x67a4fe
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x38]
lea edi, [edx + edx]
cmp edi, edx
jle 0x67ac3c
lea ecx, [esp + 0x168]
push edi
cmp eax, ecx
jne 0x679f01
call fcn.0068a280
mov esi, eax
add esp, 4
test esi, esi
je 0x67ac3c
push dword [esp + 0x38]
mov eax, dword [esp + 0x2c]
push eax
push esi
call fcn.00691a9c
add esp, 0xc
jmp 0x679f14
push eax
call fcn.0068a3d6
mov esi, eax
add esp, 8
test esi, esi
je 0x67ac3c
mov dword [esp + 0x38], edi
mov eax, esi
mov dword [esp + 0x28], eax
test esi, esi
je 0x67a574
mov edi, dword [esp + 0x30]
mov esi, dword [esp + 0x3c]
jmp 0x679e81
cmp ecx, dword [0x443c9c]
je 0x67acc2
cmp ecx, dword [0x443c90]
je 0x67acc2
cmp ecx, dword [0x443c7c]
je 0x67aaaa
cmp ecx, dword [0x443c74]
je 0x67aaaa
cmp ecx, dword [0x443ca4]
je 0x67aaaa
cmp ecx, dword [0x443c98]
je 0x67aaaa
cmp ecx, dword [0x443cfc]
je 0x67aaaa
cmp ecx, dword [0x443cf8]
je 0x67aaaa
cmp ecx, dword [0x443ce8]
je 0x67aaaa
cmp ecx, dword [0x443cb0]
jne 0x67a059
mov edi, dword [esp + 0x20]
mov edx, edi
mov esi, dword [esp + 8]
mov ecx, esi
call fcn.006787cc
test eax, eax
js 0x67a006
call fcn.0068aa21
push 0xa
add esi, edi
mov dword [eax], 0
lea eax, [esp + 0x60]
push eax
push esi
call fcn.0068b49b
add esp, 0xc
mov dword [esp + 0x60], eax
call fcn.0068aa21
cmp dword [eax], 0x22
je 0x67a002
cmp dword [esp + 0x5c], esi
jbe 0x67a002
cmp dword [esp + 0x60], 0
mov esi, dword [esp + 8]
jge 0x67a502
jmp 0x67a00e
mov esi, dword [esp + 8]
mov dword [esp + 0x60], 0xffffffff
push 0x43eca4
push 2
call fcn.0066aebc
add esp, 8
test byte [0x43fedc], 2
je 0x67a045
mov eax, dword [0x443d10]
test eax, eax
je 0x67a045
push eax
mov eax, dword [esp + 0x30]
sub eax, edi
push 1
push eax
lea eax, [esi + edi]
push eax
call fcn.0068b860
add esp, 0x10
push 0x43ecbc
push 2
call fcn.0066aebc
add esp, 8
jmp 0x67a502
cmp ecx, dword [0x443cc8]
jne 0x67a0b6
mov esi, dword [esp + 0x20]
mov edx, esi
mov edi, dword [esp + 8]
mov ecx, edi
call fcn.006787cc
test eax, eax
js 0x67ac4f
call fcn.0068aa21
push 0xa
add esi, edi
mov dword [eax], 0
lea eax, [esp + 0x60]
push eax
push esi
call fcn.0068b49b
add esp, 0xc
call fcn.0068aa21
cmp dword [eax], 0x22
je 0x67ac45
cmp dword [esp + 0x5c], esi
jbe 0x67ac45
mov esi, edi
jmp 0x67a502
cmp ecx, dword [0x443cb4]
jne 0x67a114
mov esi, dword [esp + 0x2c]
mov ecx, 0x43ed0c
mov edi, dword [esp + 8]
sub esi, dword [esp + 0x20]
add edi, dword [esp + 0x20]
push esi
mov edx, edi
call fcn.0068980c
add esp, 4
test eax, eax
jne 0x67a0f0
xor edi, edi
mov dword [esp + 0xd0], edi
jmp 0x67a4fe
push esi
mov edx, edi
mov ecx, 0x43ed18
call fcn.0068980c
add esp, 4
neg eax
sbb eax, eax
and eax, 0xfffffffe
inc eax
mov dword [esp + 0xd0], eax
jmp 0x67a4fe
cmp ecx, dword [0x443c78]
je 0x67a9ab
cmp ecx, dword [0x443ce0]
je 0x67a9ab
cmp ecx, dword [0x443cac]
je 0x67a9ab
cmp ecx, dword [0x443cd4]
je 0x67a9ab
cmp ecx, dword [0x443ce4]
jne 0x67a43e
mov esi, dword [esp + 8]
lea eax, [esp + 0x44]
mov edx, dword [esp + 0x20]
mov ecx, esi
push eax
lea eax, [esp + 0x90]
push eax
lea eax, [esp + 0x5c]
push eax
lea eax, [esp + 0x4c]
push eax
lea eax, [esp + 0x44]
push eax
call fcn.00678a4c
add esp, 0x14
mov dword [esp + 0x64], eax
test eax, eax
js 0x67a41c
mov edi, edi
mov eax, dword [esp + 0x40]
mov ecx, 0x43ed80
mov edi, dword [esp + 8]
mov esi, eax
sub esi, dword [esp + 0x34]
add edi, dword [esp + 0x34]
push esi
mov edx, edi
mov dword [esp + 0x34], eax
call fcn.0068980c
add esp, 4
test eax, eax
jne 0x67a1c2
mov edi, dword [esp + 0x10]
or edi, 2
jmp 0x67a3cc
push esi
mov edx, edi
mov ecx, 0x43ed8c
call fcn.0068980c
add esp, 4
test eax, eax
jne 0x67a1e2
mov edi, dword [esp + 0x10]
or edi, 4
jmp 0x67a3cc
push esi
mov edx, edi
mov ecx, 0x43ed94
call fcn.0068980c
add esp, 4
test eax, eax
jne 0x67a202
mov edi, dword [esp + 0x10]
or edi, 8
jmp 0x67a3cc
push esi
mov edx, edi
mov ecx, 0x43ed9c
call fcn.0068980c
add esp, 4
test eax, eax
jne 0x67a222
mov edi, dword [esp + 0x10]
or edi, 0x10
jmp 0x67a3cc
push esi
mov edx, edi
mov ecx, 0x43eda8
call fcn.0068980c
add esp, 4
test eax, eax
jne 0x67a242
mov edi, dword [esp + 0x10]
or edi, 0x20
jmp 0x67a3cc
push esi
mov edx, edi
mov ecx, 0x43edc0
call fcn.0068980c
add esp, 4
test eax, eax
je 0x67a3c5
push esi
mov edx, edi
mov ecx, fcn.0043edd0
call fcn.0068980c
add esp, 4
test eax, eax
je 0x67a3c5
push esi
mov edx, edi
mov ecx, 0x43ede0
call fcn.0068980c
add esp, 4
test eax, eax
jne 0x67a295
mov edi, dword [esp + 0x10]
or edi, 0x80
jmp 0x67a3cc
push esi
mov edx, edi
mov ecx, 0x43edf4
call fcn.0068980c
add esp, 4
test eax, eax
jne 0x67a2b8
mov edi, dword [esp + 0x10]
or edi, 0x100
jmp 0x67a3cc
push esi
mov edx, edi
mov ecx, 0x43edb8
call fcn.0068980c
add esp, 4
test eax, eax
je 0x67a3b9
push esi
mov edx, edi
mov ecx, 0x43ee04
call fcn.0068980c
add esp, 4
test eax, eax
je 0x67a3b9
push esi
mov edx, edi
mov ecx, 0x43ee0c
call fcn.0068980c
add esp, 4
test eax, eax
je 0x67a3b9
push esi
mov edx, edi
mov ecx, 0x43ee18
call fcn.0068980c
add esp, 4
test eax, eax
je 0x67a3b9
push esi
mov edx, edi
mov ecx, 0x43ee24
call fcn.0068980c
add esp, 4
test eax, eax
jne 0x67a35e
lea eax, [esp + 0xa0]
mov esi, dword [esp + 8]
mov ecx, esi
mov edx, dword [esp + 0x34]
push eax
push dword [esp + 0x90]
push dword [esp + 0x5c]
push dword [esp + 0x3c]
call fcn.0067938c
mov edi, dword [esp + 0xa0]
add esp, 0x10
jmp 0x67a3d7
push 0x43ee30
push 2
call fcn.0066aebc
add esp, 8
test byte [0x43fedc], 2
je 0x67a3a0
mov eax, dword [0x443d10]
test eax, eax
je 0x67a3a0
mov ecx, dword [esp + 0x30]
push eax
mov eax, dword [esp + 0x90]
test eax, eax
push 1
cmovns ecx, eax
sub ecx, dword [esp + 0x3c]
push ecx
push edi
call fcn.0068b860
add esp, 0x10
push 0x43ee58
push 2
call fcn.0066aebc
mov edi, dword [esp + 0x18]
add esp, 8
mov esi, dword [esp + 8]
jmp 0x67a3db
lea eax, [esp + 0x94]
jmp 0x67a333
mov edi, dword [esp + 0x10]
or edi, 0x40
mov esi, dword [esp + 8]
mov dword [esp + 0x90], edi
mov dword [esp + 0x10], edi
cmp dword [esp + 0x44], 0
jne 0x67a502
mov edx, dword [esp + 0x64]
lea eax, [esp + 0x44]
push eax
lea eax, [esp + 0x90]
mov ecx, esi
push eax
lea eax, [esp + 0x5c]
push eax
lea eax, [esp + 0x4c]
push eax
lea eax, [esp + 0x44]
push eax
call fcn.00678a4c
add esp, 0x14
mov dword [esp + 0x64], eax
test eax, eax
jns 0x67a18c
push 0x43ed60
push 2
call fcn.0066aebc
add esp, 8
or edi, 2
mov dword [esp + 0x10], edi
mov dword [esp + 0x90], edi
jmp 0x67a502
cmp ecx, dword [0x443cbc]
jne 0x67a48c
cmp dword [esp + 0x80], 0
jne 0x67ac9a
mov esi, dword [esp + 0x20]
lea eax, [esp + 0x114]
mov edi, dword [esp + 8]
mov edx, esi
push eax
lea eax, [esp + 0x114]
mov ecx, edi
push eax
lea eax, [esp + 0x114]
push eax
call fcn.006791bc
add esp, 0xc
test eax, eax
js 0x67ac59
mov esi, edi
jmp 0x67a502
cmp ecx, dword [0x443cec]
jne 0x67a5d1
cmp dword [esp + 0x80], 0
je 0x67a4ef
mov esi, dword [esp + 8]
lea eax, [esp + 0x104]
mov edx, dword [esp + 0x20]
mov ecx, esi
push eax
lea eax, [esp + 0x104]
push eax
call fcn.006792cc
add esp, 8
test eax, eax
jns 0x67a502
push 0x43eea8
push 2
call fcn.0066aebc
add esp, 8
mov dword [esp + 0x100], 0xffffffff
mov dword [esp + 0x104], 0xffffffff
jmp 0x67a502
push 0x43eecc
push 2
call fcn.0066aebc
add esp, 8
mov esi, dword [esp + 8]
mov edi, dword [esp + 0xc]
mov ecx, edi
call fcn.0066b1cc
mov edi, dword [esp + 0x10]
mov dword [esp + 0xc], 0
mov edx, dword [esp + 0x58]
lea eax, [esp + 0x2c]
push eax
lea eax, [esp + 0x24]
mov ecx, esi
push eax
lea eax, [esp + 0x70]
push eax
lea eax, [esp + 0x58]
push eax
call fcn.0067904c
mov ecx, eax
add esp, 0x10
mov dword [esp + 0x58], ecx
test ecx, ecx
jns 0x679aac
push 0x43eb78
push 1
call fcn.0066aebc
add esp, 8
mov eax, dword [esp + 0x28]
test eax, eax
je 0x67a574
lea ecx, [esp + 0x168]
cmp eax, ecx
je 0x67a574
push eax
call fcn.0068a208
add esp, 4
mov edi, dword [esp + 0x24]
mov eax, dword [esp + 0xc]
test eax, eax
je 0x67a587
mov ecx, eax
call fcn.0066b1cc
mov eax, dword [esp + 0x74]
test eax, eax
je 0x67a598
push eax
call fcn.0068a208
add esp, 4
mov eax, dword [esp + 0x50]
test eax, eax
je 0x67a5a7
mov ecx, eax
call fcn.0066b1cc
mov eax, dword [esp + 0x84]
test eax, eax
je 0x67a5b9
mov ecx, eax
call fcn.0066b1cc
mov eax, dword [esp + 0x6c]
test eax, eax
je 0x6799de
mov ecx, eax
call fcn.0066b1cc
jmp 0x6799de
cmp ecx, dword [0x443d0c]
je 0x67a4fe
cmp ecx, dword [0x443c80]
jne 0x67a661
cmp dword [esp + 0xf4], 0
je 0x67a4fe
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x20]
sub edx, eax
js 0x67acae
mov ecx, dword [esp + 8]
add ecx, eax
call fcn.0066af0c
mov esi, eax
test esi, esi
je 0x67acae
mov eax, dword [esp + 0x50]
test eax, eax
je 0x67a658
lea ecx, [esi + 0xa]
push ecx
lea ecx, [eax + 0xa]
push ecx
push 0x43ef24
call fcn.0066b25c
add esp, 0xc
mov ecx, esi
mov edi, eax
call fcn.0066b1cc
test edi, edi
je 0x67aca4
mov ecx, dword [esp + 0x50]
call fcn.0066b1cc
mov dword [esp + 0x50], edi
jmp 0x67a4fe
mov dword [esp + 0x50], esi
jmp 0x67a4fe
cmp ecx, dword [0x443c84]
jne 0x67a6a6
cmp dword [esp + 0xe0], 0
mov esi, dword [esp + 8]
je 0x67a502
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x2c]
sub edx, eax
lea ecx, [esi + eax]
call fcn.0066b0dc
mov dword [esp + 0x84], eax
test eax, eax
jne 0x67a502
push 0x43ef44
jmp 0x67a54e
cmp dword [esp + 0x80], 0
mov eax, dword [esp + 0x2c]
mov edi, dword [esp + 0x20]
mov dword [esp + 0x30], eax
jne 0x67a6eb
cmp ecx, dword [0x444e2c]
jne 0x67a6eb
mov edx, dword [esp + 8]
sub eax, edi
push eax
mov ecx, 0x43ef60
lea edx, [edx + edi]
call fcn.0068980c
add esp, 4
test eax, eax
je 0x67acb8
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0xc]
cmp ecx, dword [0x443cd0]
jne 0x67a770
mov esi, eax
mov ecx, 0x43efa8
sub esi, edi
add edi, dword [esp + 8]
push esi
mov edx, edi
call fcn.0068980c
add esp, 4
test eax, eax
je 0x67a760
push esi
mov edx, edi
mov ecx, 0x43efb0
call fcn.0068980c
add esp, 4
test eax, eax
je 0x67a760
push 0x43efb4
push 0x40
call fcn.0066aebc
add esp, 8
test byte [0x43fedc], 0x40
je 0x67a751
mov eax, dword [0x443d10]
test eax, eax
je 0x67a751
push eax
push 1
push esi
push edi
call fcn.0068b860
add esp, 0x10
push 0x43efcc
push 0x40
call fcn.0066aebc
add esp, 8
mov edi, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
or edi, 0x200
jmp 0x67a77e
mov edi, dword [esp + 0x10]
cmp ecx, esi
jne 0x67a789
or edi, 0x400
mov dword [esp + 0x90], edi
mov dword [esp + 0x10], edi
cmp ecx, dword [0x443cf0]
jne 0x67a84c
cmp dword [esp + 0xc8], 0
jne 0x67a84c
mov edx, dword [esp + 0x20]
lea eax, [esp + 0x44]
mov ecx, dword [esp + 8]
push eax
push 0
push 0
lea eax, [esp + 0x4c]
push eax
lea eax, [esp + 0x44]
push eax
call fcn.00678a4c
mov esi, eax
add esp, 0x14
test esi, esi
js 0x67a82b
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x34]
sub ecx, edx
add edx, dword [esp + 8]
push ecx
mov ecx, 0x43efe8
call fcn.0068980c
add esp, 4
test eax, eax
mov eax, 2
cmove edi, eax
cmp dword [esp + 0x44], 0
mov dword [esp + 0x10], edi
mov dword [esp + 0x90], edi
jne 0x67a848
mov ecx, dword [esp + 8]
lea eax, [esp + 0x44]
push eax
push 0
push 0
lea eax, [esp + 0x4c]
mov edx, esi
push eax
lea eax, [esp + 0x44]
push eax
call fcn.00678a4c
mov esi, eax
add esp, 0x14
test esi, esi
jns 0x67a7cc
push 0x43efd0
push 2
call fcn.0066aebc
add esp, 8
or edi, 2
mov dword [esp + 0x10], edi
mov dword [esp + 0x90], edi
mov ecx, dword [esp + 0xc]
cmp dword [esp + 0x80], 0
jne 0x67a87f
cmp ecx, dword [0x443d00]
je 0x67a86e
cmp ecx, dword [0x443cb8]
je 0x67a86e
cmp ecx, dword [0x443c94]
jne 0x67a87f
or edi, 0x800
mov dword [esp + 0x10], edi
mov dword [esp + 0x90], edi
mov esi, dword [esp + 0x28]
test esi, esi
je 0x67a4fe
cmp ecx, dword [0x443d08]
je 0x67a4fe
cmp ecx, dword [0x443cf4]
je 0x67a4fe
cmp ecx, dword [0x443d04]
je 0x67a4fe
cmp ecx, dword [0x443cc0]
je 0x67a4fe
cmp ecx, dword [0x443ca8]
je 0x67a4fe
cmp ecx, dword [0x443cdc]
je 0x67a4fe
mov edi, dword [esp + 0x24]
test edi, edi
je 0x67a8ea
mov edx, edi
call fcn.0066b59c
test eax, eax
jne 0x67a4fe
mov edx, dword [0x443c8c]
call fcn.0066b59c
test eax, eax
jne 0x67a4fe
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x3c]
lea eax, [ecx - 2]
cmp edx, eax
jle 0x67a93f
lea eax, [esp + 0x168]
mov ecx, esi
push eax
lea edx, [esp + 0x3c]
call fcn.006794ec
mov esi, eax
add esp, 4
mov dword [esp + 0x28], esi
test esi, esi
je 0x67a578
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x3c]
lea eax, [ecx - 2]
cmp edx, eax
jg 0x67a90c
mov eax, dword [esp + 0x30]
mov word [edx + esi], 0xa0d
add edx, 2
sub eax, dword [esp + 0x4c]
mov dword [esp + 0x3c], edx
mov dword [esp + 0x30], eax
lea esp, [esp]
push eax
push dword [esp + 0x68]
push ecx
mov ecx, esi
call fcn.0068974c
add esp, 0xc
test eax, eax
jns 0x67a9a2
lea eax, [esp + 0x168]
mov ecx, esi
push eax
lea edx, [esp + 0x3c]
call fcn.006794ec
mov esi, eax
add esp, 4
mov dword [esp + 0x28], esi
test esi, esi
je 0x67a578
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x3c]
jmp 0x67a95c
mov dword [esp + 0x3c], eax
jmp 0x67a4fe
mov esi, dword [esp + 0x20]
lea eax, [esp + 0x154]
mov ecx, dword [esp + 8]
mov edx, esi
push eax
lea eax, [esp + 0x140]
push eax
lea eax, [esp + 0x12c]
push eax
call fcn.006789cc
add esp, 0xc
test eax, eax
jns 0x67a9f8
mov al, byte [ecx + esi]
cmp al, 0xd
je 0x67ac25
cmp al, 0xa
je 0x67ac25
push 0x43ed20
push 1
jmp 0x67a4f6
cmp dword [esp + 0x154], 0
je 0x67aa0c
push 0x43ed38
jmp 0x67a4f4
mov eax, dword [esp + 0x124]
mov esi, ecx
mov edx, dword [esp + 0x13c]
sub edx, eax
lea ecx, [esi + eax]
call fcn.006896ac
test eax, eax
je 0x67a558
mov edi, dword [esp + 0xc]
cmp edi, dword [0x443c78]
jne 0x67aa4a
cmp dword [esp + 0x74], 0
jne 0x67aa9c
mov dword [esp + 0x74], eax
jmp 0x67a506
cmp edi, dword [0x443ce0]
jne 0x67aa62
cmp dword [esp + 0x78], 0
jne 0x67aa9c
mov dword [esp + 0x78], eax
jmp 0x67a506
cmp edi, dword [0x443cac]
jne 0x67aa7a
cmp dword [esp + 0x70], 0
jne 0x67aa9c
mov dword [esp + 0x70], eax
jmp 0x67a506
cmp edi, dword [0x443cd4]
jne 0x67afa0
cmp dword [esp + 0x88], 0
jne 0x67aa9c
mov dword [esp + 0x88], eax
jmp 0x67a506
push eax
call fcn.0068a208
add esp, 4
jmp 0x67a506
mov esi, dword [esp + 0x2c]
lea eax, [esp + 0x118]
mov edi, dword [esp + 0x20]
mov edx, edi
mov ecx, dword [esp + 8]
push eax
push esi
call fcn.00680e8c
add esp, 8
test eax, eax
jns 0x67ab37
mov eax, dword [esp + 0xc]
cmp eax, dword [0x443c74]
je 0x67ab22
add eax, 0xa
push eax
push 0x43ec8c
push 2
call fcn.0066aebc
add esp, 0xc
test byte [0x43fedc], 2
je 0x67ab13
mov eax, dword [0x443d10]
test eax, eax
je 0x67ab13
push eax
mov eax, dword [esp + 0xc]
sub esi, edi
push 1
add eax, edi
push esi
push eax
call fcn.0068b860
add esp, 0x10
push 0x43eca0
push 2
call fcn.0066aebc
add esp, 8
or eax, 0xffffffff
or ecx, eax
mov dword [esp + 0x118], eax
mov dword [esp + 0x11c], ecx
jmp 0x67ab45
mov ecx, dword [esp + 0x11c]
mov eax, dword [esp + 0x118]
mov esi, dword [esp + 0xc]
cmp esi, dword [0x443c7c]
jne 0x67ab76
test ecx, ecx
jl 0x67a4fe
jg 0x67ab63
test eax, eax
jb 0x67a4fe
mov dword [esp + 0xdc], eax
mov dword [esp + 0xf8], ecx
jmp 0x67a4fe
cmp esi, dword [0x443c74]
jne 0x67abc8
test ecx, ecx
jl 0x67ab9b
jg 0x67ab88
test eax, eax
jb 0x67ab9b
mov dword [esp + 0xbc], eax
mov dword [esp + 0xc0], ecx
jmp 0x67a4fe
xorps xmm0, xmm0
movlpd qword [esp + 0x160], xmm0
mov eax, dword [esp + 0x164]
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 0x160]
mov dword [esp + 0xbc], eax
jmp 0x67a4fe
cmp esi, dword [0x443cfc]
jne 0x67abe3
mov dword [esp + 0xec], eax
mov dword [esp + 0xfc], ecx
jmp 0x67a4fe
cmp esi, dword [0x443ca4]
jne 0x67abfe
mov dword [esp + 0xd8], eax
mov dword [esp + 0xcc], ecx
jmp 0x67a4fe
cmp esi, dword [0x443c98]
mov edi, dword [esp + 0xc]
mov esi, dword [esp + 8]
jne 0x67a506
mov dword [esp + 0xb8], eax
mov dword [esp + 0xd4], ecx
jmp 0x67a506
mov esi, ecx
jmp 0x67a502
xor eax, eax
mov dword [esp + 0x6c], eax
push 0x43ec48
jmp 0x67a54e
mov eax, dword [esp + 0x28]
jmp 0x67a560
push 0x43ecec
jmp 0x67a54e
push 0x43eccc
jmp 0x67a54e
push 0x43ee68
push 1
call fcn.0066aebc
add esp, 8
test byte [0x43fedc], 1
je 0x67ac90
mov eax, dword [0x443d10]
test eax, eax
je 0x67ac90
push eax
mov eax, dword [esp + 0x30]
sub eax, esi
push 1
push eax
lea eax, [edi + esi]
push eax
call fcn.0068b860
add esp, 0x10
push 0x43ee88
jmp 0x67a54e
push 0x43ee8c
jmp 0x67a54e
push 0x43ef2c
jmp 0x67a54e
push 0x43ef0c
jmp 0x67a54e
push 0x43ef78
jmp 0x67a54e
push 0x43ec6c
jmp 0x67a54e
mov esi, dword [esp + 0x15c]
test esi, esi
je 0x67acf6
mov edx, dword [esp + 0x3c]
test edx, edx
js 0x67a558
mov ecx, dword [esp + 0x28]
call fcn.0066af0c
test eax, eax
je 0x67a558
mov dword [esi], eax
mov eax, dword [esp + 0x28]
lea ecx, [esp + 0x168]
cmp eax, ecx
je 0x67ad0e
push eax
call fcn.0068a208
add esp, 4
mov ecx, dword [esp + 0x148]
test ecx, ecx
je 0x67ad24
mov eax, dword [esp + 0x48]
test eax, eax
jne 0x67ad24
and dword [ecx], 0xfffffffe
mov edi, dword [esp + 0xd0]
or ecx, 0xffffffff
mov eax, dword [esp + 0x7c]
test edi, edi
cmovne eax, ecx
mov ecx, dword [esp + 0x14c]
test ecx, ecx
je 0x67ad44
mov dword [ecx], eax
mov ecx, dword [esp + 0x130]
test ecx, ecx
je 0x67ad66
movdqu xmm0, xmmword [esp + 0x90]
mov eax, dword [esp + 0xa0]
movdqu xmmword [ecx], xmm0
mov dword [ecx + 0x10], eax
cmp dword [esp + 0xf0], 0
je 0x67ae42
cmp dword [esp + 0xcc], 0
jg 0x67adbc
jl 0x67ad8a
cmp dword [esp + 0xd8], 0
jae 0x67adbc
cmp dword [esp + 0xd4], 0
jg 0x67adbc
jl 0x67ada0
cmp dword [esp + 0xb8], 0
jae 0x67adbc
cmp dword [esp + 0x70], 0
jne 0x67adbc
cmp dword [esp + 0x78], 0
jne 0x67adbc
cmp dword [esp + 0x88], 0
jne 0x67adbc
xor esi, esi
jmp 0x67ae39
call fcn.006777ec
mov esi, eax
test esi, esi
je 0x67ae08
mov eax, dword [esp + 0xd8]
mov dword [esi], eax
mov eax, dword [esp + 0xcc]
mov dword [esi + 4], eax
mov eax, dword [esp + 0xb8]
mov dword [esi + 8], eax
mov eax, dword [esp + 0xd4]
mov dword [esi + 0xc], eax
mov eax, dword [esp + 0x70]
mov dword [esi + 0x10], eax
mov eax, dword [esp + 0x78]
mov dword [esi + 0x14], eax
mov eax, dword [esp + 0x88]
mov dword [esi + 0x18], eax
jmp 0x67ae39
push 0x43eff4
push 1
call fcn.0066aebc
mov eax, dword [esp + 0x78]
add esp, 8
test eax, eax
je 0x67ae28
push eax
call fcn.0068a208
add esp, 4
mov eax, dword [esp + 0x78]
test eax, eax
je 0x67ae39
push eax
call fcn.0068a208
add esp, 4
mov eax, dword [esp + 0xf0]
mov dword [eax], esi
mov eax, dword [esp + 0x158]
test eax, eax
je 0x67ae4f
mov dword [eax], edi
mov eax, dword [esp + 0x138]
test eax, eax
je 0x67ae6d
mov edx, dword [esp + 0xdc]
mov dword [eax], edx
mov edx, dword [esp + 0xf8]
mov dword [eax + 4], edx
mov eax, dword [esp + 0x150]
test eax, eax
je 0x67ae8b
mov edx, dword [esp + 0xec]
mov dword [eax], edx
mov edx, dword [esp + 0xfc]
mov dword [eax + 4], edx
mov ecx, dword [esp + 0x140]
test ecx, ecx
je 0x67aea9
mov eax, dword [esp + 0xbc]
mov dword [ecx], eax
mov eax, dword [esp + 0xc0]
mov dword [ecx + 4], eax
mov ecx, dword [esp + 0x144]
test ecx, ecx
je 0x67aeba
mov eax, dword [esp + 0x60]
mov dword [ecx], eax
mov ecx, dword [esp + 0x128]
mov eax, dword [esp + 0x74]
test ecx, ecx
je 0x67aecd
mov dword [ecx], eax
jmp 0x67aeda
test eax, eax
je 0x67aeda
push eax
call fcn.0068a208
add esp, 4
mov ecx, dword [esp + 0x12c]
test ecx, ecx
je 0x67aefc
movq xmm0, qword [esp + 0x100]
mov eax, dword [esp + 0x108]
movq qword [ecx], xmm0
mov dword [ecx + 8], eax
mov ecx, dword [esp + 0x134]
test ecx, ecx
je 0x67af1e
movq xmm0, qword [esp + 0x10c]
mov eax, dword [esp + 0x114]
movq qword [ecx], xmm0
mov dword [ecx + 8], eax
mov ecx, dword [esp + 0xf4]
mov eax, dword [esp + 0x50]
test ecx, ecx
je 0x67af31
mov dword [ecx], eax
jmp 0x67af3c
test eax, eax
je 0x67af3c
mov ecx, eax
call fcn.0066b1cc
mov ecx, dword [esp + 0xe0]
mov eax, dword [esp + 0x84]
test ecx, ecx
je 0x67af52
mov dword [ecx], eax
jmp 0x67af5d
test eax, eax
je 0x67af5d
mov ecx, eax
call fcn.0066b1cc
mov ecx, dword [esp + 0xe8]
mov eax, dword [esp + 0x6c]
test ecx, ecx
je 0x67af70
mov dword [ecx], eax
jmp 0x67af7b
test eax, eax
je 0x67af7b
mov ecx, eax
call fcn.0066b1cc
mov ecx, dword [esp + 0x24]
test ecx, ecx
je 0x67af88
call fcn.0066b49c
mov ecx, dword [esp + 0x36c]
mov eax, dword [esp + 0x58]
pop edi
pop esi
xor ecx, esp
call fcn.0068a1f9
mov esp, ebp
pop ebp
ret
call fcn.0068a834
int3