Function at 0x67e57c
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 0x67e667
cmp word [eax + 8], 0
jbe 0x67e667
cmp byte [eax + 0xa], 0x2f
mov dword [esp + 0xc4], 1
je 0x67e672
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 0x67e6fb
mov eax, dword [esi + 4]
cmp dword [eax + 0x20], edi
jne 0x67e6fb
xor eax, eax
mov dword [esp + 0x48], eax
jmp 0x67e703
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.0067e04c
mov esi, eax
add esp, 0x10
mov dword [esp + 0x54], esi
test esi, esi
js 0x67e9cf
mov edi, dword [esp + 8]
jmp 0x67e7ec
mov eax, dword [esp + 0x4c]
cmp eax, 0xffffffff
je 0x67ea65
test eax, eax
js 0x67e99d
mov edx, dword [esp + 0x68]
lea ecx, [edi + eax]
sub edx, eax
call fcn.006700dc
mov dword [esp + 0xc], eax
cmp eax, dword [0x443d08]
jne 0x67e968
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.0067da4c
add esp, 0x14
mov dword [esp + 0x58], eax
test eax, eax
js 0x67ea16
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.0068e80c
add esp, 4
test eax, eax
jne 0x67e875
mov dword [esp + 0x48], eax
jmp 0x67e954
push esi
mov edx, edi
mov ecx, 0x43eb4c
call fcn.0068e80c
add esp, 4
test eax, eax
jne 0x67e896
mov dword [esp + 0x48], 1
jmp 0x67e954
mov ecx, dword [esp + 0x24]
test ecx, ecx
jne 0x67e8c8
push 0xc
call fcn.0068f280
add esp, 4
mov dword [esp + 0x24], eax
test eax, eax
je 0x67ea00
mov dword [eax], 0
mov dword [eax + 4], 0
mov dword [eax + 8], 0
mov edx, esi
mov ecx, edi
call fcn.006700dc
mov edx, dword [esp + 0x24]
mov edi, eax
cmp dword [edx + 8], 0
jne 0x67e90a
push 0x14
call fcn.0068f280
mov edx, dword [esp + 0x28]
add esp, 4
mov dword [edx + 8], eax
test eax, eax
jne 0x67e903
push 0x43b378
push 1
call fcn.0066febc
add esp, 8
jmp 0x67e954
mov dword [edx + 4], 5
mov eax, dword [edx]
cmp dword [edx + 4], eax
jg 0x67e94a
lea esi, [eax*2 + 1]
lea eax, [esi*4]
push eax
push dword [edx + 8]
call fcn.0068f3d6
add esp, 8
test eax, eax
jne 0x67e940
push 0x43b394
push 1
call fcn.0066febc
add esp, 8
jmp 0x67e954
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 0x67e986
mov edx, dword [esp + 0x58]
jmp 0x67e823
mov ecx, dword [esp + 0xc8]
mov edx, 1
cmp eax, dword [0x443ce4]
cmove ecx, edx
mov dword [esp + 0xc8], ecx
jmp 0x67e98e
mov esi, dword [esp + 0x54]
mov eax, dword [esp + 0xc]
mov ecx, eax
call fcn.006701cc
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.0067e04c
mov esi, eax
mov dword [esp + 0x64], eax
add esp, 0x10
test esi, esi
jns 0x67e7ec
mov edi, dword [esp + 0x24]
push 0x43eb00
push 1
call fcn.0066febc
add esp, 8
test edi, edi
je 0x67e9e9
mov ecx, edi
call fcn.0067049c
or eax, 0xffffffff
pop edi
pop esi
mov ecx, dword [esp + 0x364]
xor ecx, esp
call fcn.0068f1f9
mov esp, ebp
pop ebp
ret
push 0x43eb58
push 1
xor edi, edi
call fcn.0066febc
add esp, 8
jmp 0x67f578
push 0x43eb24
push 1
call fcn.0066febc
add esp, 8
test byte [0x43fedc], 1
je 0x67ea51
mov eax, dword [0x443d10]
test eax, eax
je 0x67ea51
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.00690860
add esp, 0x10
push 0x43eb40
push 1
call fcn.0066febc
add esp, 8
jmp 0x67f574
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.0067e04c
add esp, 0x10
mov dword [esp + 0x58], eax
test eax, eax
js 0x67f549
mov edi, dword [esp + 0x90]
mov dword [esp + 0x10], edi
jmp 0x67eaac
mov eax, dword [esp + 0x4c]
cmp eax, 0xffffffff
je 0x67fccc
test eax, eax
jns 0x67eade
push 0x43eb9c
push 2
call fcn.0066febc
add esp, 8
cmp dword [0x43f03c], 0
je 0x67f558
jmp 0x67f519
mov edx, dword [esp + 0x68]
lea ecx, [esi + eax]
sub edx, eax
mov dword [esp + 0x64], ecx
call fcn.006700dc
mov ecx, eax
mov dword [esp + 0xc], ecx
cmp ecx, dword [0x443ccc]
jne 0x67ec10
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.0067da4c
add esp, 0x14
mov dword [esp + 0x30], eax
test eax, eax
js 0x67ebc0
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.0068e80c
add esp, 4
test eax, eax
jne 0x67eb62
mov dword [esp + 0x48], eax
jmp 0x67eb84
push esi
mov edx, edi
mov ecx, 0x43ebec
call fcn.0068e80c
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 0x67f4fe
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.0067da4c
add esp, 0x14
mov dword [esp + 0x30], eax
test eax, eax
jns 0x67eb3c
mov esi, dword [esp + 0x20]
push 0x43ebbc
push 2
call fcn.0066febc
add esp, 8
test byte [0x43fedc], 2
je 0x67ebf7
mov eax, dword [0x443d10]
test eax, eax
je 0x67ebf7
push eax
mov eax, dword [esp + 0x30]
sub eax, esi
push 1
push eax
lea eax, [edi + esi]
push eax
call fcn.00690860
add esp, 0x10
push 0x43ebe0
push 2
call fcn.0066febc
mov dword [esp + 0x50], 0
jmp 0x67f4fb
cmp ecx, dword [0x443ca0]
jne 0x67ed0a
mov esi, dword [esp + 0x20]
mov edx, esi
mov edi, dword [esp + 8]
mov ecx, edi
call fcn.0067d7cc
test eax, eax
jns 0x67ec85
push 0x43ebf8
push 2
call fcn.0066febc
add esp, 8
test byte [0x43fedc], 2
je 0x67ec68
mov eax, dword [0x443d10]
test eax, eax
je 0x67ec68
push eax
mov eax, dword [esp + 0x30]
sub eax, esi
push 1
push eax
lea eax, [edi + esi]
push eax
call fcn.00690860
add esp, 0x10
push 0x43ec1c
push 2
call fcn.0066febc
add esp, 8
mov esi, edi
or eax, 0xffffffff
mov dword [esp + 0x7c], eax
jmp 0x67f502
call fcn.0068fa21
push 0xa
add edi, esi
mov dword [eax], 0
lea eax, [esp + 0x60]
push eax
push edi
call fcn.0069049b
add esp, 0xc
mov dword [esp + 0x7c], eax
call fcn.0068fa21
cmp dword [eax], 0x22
je 0x67ecba
cmp dword [esp + 0x5c], edi
ja 0x67f4fe
push 0x43ec20
push 2
call fcn.0066febc
add esp, 8
test byte [0x43fedc], 2
je 0x67ecee
mov eax, dword [0x443d10]
test eax, eax
je 0x67ecee
push eax
mov eax, dword [esp + 0x30]
push 1
sub eax, esi
push eax
push edi
call fcn.00690860
add esp, 0x10
push 0x43ec44
push 2
call fcn.0066febc
mov dword [esp + 0x84], 0xffffffff
jmp 0x67f4fb
cmp dword [esp + 0xc4], 0
mov esi, dword [0x443cc4]
jne 0x67ede9
cmp ecx, dword [0x443cd8]
je 0x67edf1
cmp ecx, dword [0x443c88]
jne 0x67ef33
mov eax, dword [0x443bac]
mov edi, dword [esp + 0x2c]
mov dword [esp + 0x30], edi
test eax, eax
je 0x67ed8d
cmp eax, 1
jne 0x67f4fe
cmp dword [esp + 0xe4], 0
mov esi, dword [esp + 8]
je 0x67f502
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.0067e41c
add esp, 8
test eax, eax
je 0x67f502
mov ecx, dword [esp + 0x38]
mov esi, dword [esp + 0x3c]
lea eax, [ecx - 2]
cmp esi, eax
jle 0x67ee68
mov edx, dword [esp + 0x28]
jmp 0x67edac
lea edi, [ecx + ecx]
cmp edi, ecx
jle 0x67fc3c
lea eax, [esp + 0x168]
push edi
cmp edx, eax
jne 0x67ee2e
call fcn.0068f280
mov esi, eax
add esp, 4
test esi, esi
je 0x67fc3c
push dword [esp + 0x38]
mov eax, dword [esp + 0x2c]
push eax
push esi
call fcn.00696a9c
add esp, 0xc
jmp 0x67ee41
cmp ecx, esi
jne 0x67ed2a
cmp dword [esp + 0xe8], 0
je 0x67f4fe
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x20]
sub edx, eax
js 0x67fc2c
mov esi, dword [esp + 8]
lea ecx, [esi + eax]
call fcn.0066ff0c
mov edi, eax
mov dword [esp + 0x6c], edi
test edi, edi
je 0x67fc32
jmp 0x67f502
push edx
call fcn.0068f3d6
mov esi, eax
add esp, 8
test esi, esi
je 0x67fc3c
mov ecx, edi
mov edx, esi
mov dword [esp + 0x38], ecx
mov dword [esp + 0x28], edx
test esi, esi
je 0x67f574
mov esi, dword [esp + 0x3c]
lea eax, [edi - 2]
cmp esi, eax
jg 0x67edac
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 0x67eec0
test edi, edi
jle 0x67eea9
add esi, eax
cmp edx, dword [esp + 0x38]
jge 0x67eebc
mov eax, dword [esp + 0x64]
inc edx
mov al, byte [ecx + eax]
mov byte [esi + ecx], al
inc ecx
cmp ecx, edi
jl 0x67ee8f
mov eax, dword [esp + 0x28]
cmp edx, dword [esp + 0x38]
jge 0x67eec0
test edx, edx
js 0x67eec0
mov dword [esp + 0x3c], edx
jmp 0x67f4fe
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x38]
lea edi, [edx + edx]
cmp edi, edx
jle 0x67fc3c
lea ecx, [esp + 0x168]
push edi
cmp eax, ecx
jne 0x67ef01
call fcn.0068f280
mov esi, eax
add esp, 4
test esi, esi
je 0x67fc3c
push dword [esp + 0x38]
mov eax, dword [esp + 0x2c]
push eax
push esi
call fcn.00696a9c
add esp, 0xc
jmp 0x67ef14
push eax
call fcn.0068f3d6
mov esi, eax
add esp, 8
test esi, esi
je 0x67fc3c
mov dword [esp + 0x38], edi
mov eax, esi
mov dword [esp + 0x28], eax
test esi, esi
je 0x67f574
mov edi, dword [esp + 0x30]
mov esi, dword [esp + 0x3c]
jmp 0x67ee81
cmp ecx, dword [0x443c9c]
je 0x67fcc2
cmp ecx, dword [0x443c90]
je 0x67fcc2
cmp ecx, dword [0x443c7c]
je 0x67faaa
cmp ecx, dword [0x443c74]
je 0x67faaa
cmp ecx, dword [0x443ca4]
je 0x67faaa
cmp ecx, dword [0x443c98]
je 0x67faaa
cmp ecx, dword [0x443cfc]
je 0x67faaa
cmp ecx, dword [0x443cf8]
je 0x67faaa
cmp ecx, dword [0x443ce8]
je 0x67faaa
cmp ecx, dword [0x443cb0]
jne 0x67f059
mov edi, dword [esp + 0x20]
mov edx, edi
mov esi, dword [esp + 8]
mov ecx, esi
call fcn.0067d7cc
test eax, eax
js 0x67f006
call fcn.0068fa21
push 0xa
add esi, edi
mov dword [eax], 0
lea eax, [esp + 0x60]
push eax
push esi
call fcn.0069049b
add esp, 0xc
mov dword [esp + 0x60], eax
call fcn.0068fa21
cmp dword [eax], 0x22
je 0x67f002
cmp dword [esp + 0x5c], esi
jbe 0x67f002
cmp dword [esp + 0x60], 0
mov esi, dword [esp + 8]
jge 0x67f502
jmp 0x67f00e
mov esi, dword [esp + 8]
mov dword [esp + 0x60], 0xffffffff
push 0x43eca4
push 2
call fcn.0066febc
add esp, 8
test byte [0x43fedc], 2
je 0x67f045
mov eax, dword [0x443d10]
test eax, eax
je 0x67f045
push eax
mov eax, dword [esp + 0x30]
sub eax, edi
push 1
push eax
lea eax, [esi + edi]
push eax
call fcn.00690860
add esp, 0x10
push 0x43ecbc
push 2
call fcn.0066febc
add esp, 8
jmp 0x67f502
cmp ecx, dword [0x443cc8]
jne 0x67f0b6
mov esi, dword [esp + 0x20]
mov edx, esi
mov edi, dword [esp + 8]
mov ecx, edi
call fcn.0067d7cc
test eax, eax
js 0x67fc4f
call fcn.0068fa21
push 0xa
add esi, edi
mov dword [eax], 0
lea eax, [esp + 0x60]
push eax
push esi
call fcn.0069049b
add esp, 0xc
call fcn.0068fa21
cmp dword [eax], 0x22
je 0x67fc45
cmp dword [esp + 0x5c], esi
jbe 0x67fc45
mov esi, edi
jmp 0x67f502
cmp ecx, dword [0x443cb4]
jne 0x67f114
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.0068e80c
add esp, 4
test eax, eax
jne 0x67f0f0
xor edi, edi
mov dword [esp + 0xd0], edi
jmp 0x67f4fe
push esi
mov edx, edi
mov ecx, 0x43ed18
call fcn.0068e80c
add esp, 4
neg eax
sbb eax, eax
and eax, 0xfffffffe
inc eax
mov dword [esp + 0xd0], eax
jmp 0x67f4fe
cmp ecx, dword [0x443c78]
je 0x67f9ab
cmp ecx, dword [0x443ce0]
je 0x67f9ab
cmp ecx, dword [0x443cac]
je 0x67f9ab
cmp ecx, dword [0x443cd4]
je 0x67f9ab
cmp ecx, dword [0x443ce4]
jne 0x67f43e
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.0067da4c
add esp, 0x14
mov dword [esp + 0x64], eax
test eax, eax
js 0x67f41c
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.0068e80c
add esp, 4
test eax, eax
jne 0x67f1c2
mov edi, dword [esp + 0x10]
or edi, 2
jmp 0x67f3cc
push esi
mov edx, edi
mov ecx, 0x43ed8c
call fcn.0068e80c
add esp, 4
test eax, eax
jne 0x67f1e2
mov edi, dword [esp + 0x10]
or edi, 4
jmp 0x67f3cc
push esi
mov edx, edi
mov ecx, 0x43ed94
call fcn.0068e80c
add esp, 4
test eax, eax
jne 0x67f202
mov edi, dword [esp + 0x10]
or edi, 8
jmp 0x67f3cc
push esi
mov edx, edi
mov ecx, 0x43ed9c
call fcn.0068e80c
add esp, 4
test eax, eax
jne 0x67f222
mov edi, dword [esp + 0x10]
or edi, 0x10
jmp 0x67f3cc
push esi
mov edx, edi
mov ecx, 0x43eda8
call fcn.0068e80c
add esp, 4
test eax, eax
jne 0x67f242
mov edi, dword [esp + 0x10]
or edi, 0x20
jmp 0x67f3cc
push esi
mov edx, edi
mov ecx, 0x43edc0
call fcn.0068e80c
add esp, 4
test eax, eax
je 0x67f3c5
push esi
mov edx, edi
mov ecx, 0x43edd0
call fcn.0068e80c
add esp, 4
test eax, eax
je 0x67f3c5
push esi
mov edx, edi
mov ecx, 0x43ede0
call fcn.0068e80c
add esp, 4
test eax, eax
jne 0x67f295
mov edi, dword [esp + 0x10]
or edi, 0x80
jmp 0x67f3cc
push esi
mov edx, edi
mov ecx, 0x43edf4
call fcn.0068e80c
add esp, 4
test eax, eax
jne 0x67f2b8
mov edi, dword [esp + 0x10]
or edi, 0x100
jmp 0x67f3cc
push esi
mov edx, edi
mov ecx, 0x43edb8
call fcn.0068e80c
add esp, 4
test eax, eax
je 0x67f3b9
push esi
mov edx, edi
mov ecx, 0x43ee04
call fcn.0068e80c
add esp, 4
test eax, eax
je 0x67f3b9
push esi
mov edx, edi
mov ecx, 0x43ee0c
call fcn.0068e80c
add esp, 4
test eax, eax
je 0x67f3b9
push esi
mov edx, edi
mov ecx, 0x43ee18
call fcn.0068e80c
add esp, 4
test eax, eax
je 0x67f3b9
push esi
mov edx, edi
mov ecx, 0x43ee24
call fcn.0068e80c
add esp, 4
test eax, eax
jne 0x67f35e
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.0067e38c
mov edi, dword [esp + 0xa0]
add esp, 0x10
jmp 0x67f3d7
push 0x43ee30
push 2
call fcn.0066febc
add esp, 8
test byte [0x43fedc], 2
je 0x67f3a0
mov eax, dword [0x443d10]
test eax, eax
je 0x67f3a0
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.00690860
add esp, 0x10
push 0x43ee58
push 2
call fcn.0066febc
mov edi, dword [esp + 0x18]
add esp, 8
mov esi, dword [esp + 8]
jmp 0x67f3db
lea eax, [esp + 0x94]
jmp 0x67f333
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 0x67f502
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.0067da4c
add esp, 0x14
mov dword [esp + 0x64], eax
test eax, eax
jns 0x67f18c
push fcn.0043ed60
push 2
call fcn.0066febc
add esp, 8
or edi, 2
mov dword [esp + 0x10], edi
mov dword [esp + 0x90], edi
jmp 0x67f502
cmp ecx, dword [0x443cbc]
jne 0x67f48c
cmp dword [esp + 0x80], 0
jne 0x67fc9a
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.0067e1bc
add esp, 0xc
test eax, eax
js 0x67fc59
mov esi, edi
jmp 0x67f502
cmp ecx, dword [0x443cec]
jne 0x67f5d1
cmp dword [esp + 0x80], 0
je 0x67f4ef
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.0067e2cc
add esp, 8
test eax, eax
jns 0x67f502
push 0x43eea8
push 2
call fcn.0066febc
add esp, 8
mov dword [esp + 0x100], 0xffffffff
mov dword [esp + 0x104], 0xffffffff
jmp 0x67f502
push 0x43eecc
push 2
call fcn.0066febc
add esp, 8
mov esi, dword [esp + 8]
mov edi, dword [esp + 0xc]
mov ecx, edi
call fcn.006701cc
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.0067e04c
mov ecx, eax
add esp, 0x10
mov dword [esp + 0x58], ecx
test ecx, ecx
jns 0x67eaac
push 0x43eb78
push 1
call fcn.0066febc
add esp, 8
mov eax, dword [esp + 0x28]
test eax, eax
je 0x67f574
lea ecx, [esp + 0x168]
cmp eax, ecx
je 0x67f574
push eax
call fcn.0068f208
add esp, 4
mov edi, dword [esp + 0x24]
mov eax, dword [esp + 0xc]
test eax, eax
je 0x67f587
mov ecx, eax
call fcn.006701cc
mov eax, dword [esp + 0x74]
test eax, eax
je 0x67f598
push eax
call fcn.0068f208
add esp, 4
mov eax, dword [esp + 0x50]
test eax, eax
je 0x67f5a7
mov ecx, eax
call fcn.006701cc
mov eax, dword [esp + 0x84]
test eax, eax
je 0x67f5b9
mov ecx, eax
call fcn.006701cc
mov eax, dword [esp + 0x6c]
test eax, eax
je 0x67e9de
mov ecx, eax
call fcn.006701cc
jmp 0x67e9de
cmp ecx, dword [0x443d0c]
je 0x67f4fe
cmp ecx, dword [0x443c80]
jne 0x67f661
cmp dword [esp + 0xf4], 0
je 0x67f4fe
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x20]
sub edx, eax
js 0x67fcae
mov ecx, dword [esp + 8]
add ecx, eax
call fcn.0066ff0c
mov esi, eax
test esi, esi
je 0x67fcae
mov eax, dword [esp + 0x50]
test eax, eax
je 0x67f658
lea ecx, [esi + 0xa]
push ecx
lea ecx, [eax + 0xa]
push ecx
push 0x43ef24
call fcn.0067025c
add esp, 0xc
mov ecx, esi
mov edi, eax
call fcn.006701cc
test edi, edi
je 0x67fca4
mov ecx, dword [esp + 0x50]
call fcn.006701cc
mov dword [esp + 0x50], edi
jmp 0x67f4fe
mov dword [esp + 0x50], esi
jmp 0x67f4fe
cmp ecx, dword [0x443c84]
jne 0x67f6a6
cmp dword [esp + 0xe0], 0
mov esi, dword [esp + 8]
je 0x67f502
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x2c]
sub edx, eax
lea ecx, [esi + eax]
call fcn.006700dc
mov dword [esp + 0x84], eax
test eax, eax
jne 0x67f502
push 0x43ef44
jmp 0x67f54e
cmp dword [esp + 0x80], 0
mov eax, dword [esp + 0x2c]
mov edi, dword [esp + 0x20]
mov dword [esp + 0x30], eax
jne 0x67f6eb
cmp ecx, dword [0x444e2c]
jne 0x67f6eb
mov edx, dword [esp + 8]
sub eax, edi
push eax
mov ecx, 0x43ef60
lea edx, [edx + edi]
call fcn.0068e80c
add esp, 4
test eax, eax
je 0x67fcb8
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0xc]
cmp ecx, dword [0x443cd0]
jne 0x67f770
mov esi, eax
mov ecx, 0x43efa8
sub esi, edi
add edi, dword [esp + 8]
push esi
mov edx, edi
call fcn.0068e80c
add esp, 4
test eax, eax
je 0x67f760
push esi
mov edx, edi
mov ecx, 0x43efb0
call fcn.0068e80c
add esp, 4
test eax, eax
je 0x67f760
push 0x43efb4
push 0x40
call fcn.0066febc
add esp, 8
test byte [0x43fedc], 0x40
je 0x67f751
mov eax, dword [0x443d10]
test eax, eax
je 0x67f751
push eax
push 1
push esi
push edi
call fcn.00690860
add esp, 0x10
push 0x43efcc
push 0x40
call fcn.0066febc
add esp, 8
mov edi, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
or edi, 0x200
jmp 0x67f77e
mov edi, dword [esp + 0x10]
cmp ecx, esi
jne 0x67f789
or edi, 0x400
mov dword [esp + 0x90], edi
mov dword [esp + 0x10], edi
cmp ecx, dword [0x443cf0]
jne 0x67f84c
cmp dword [esp + 0xc8], 0
jne 0x67f84c
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.0067da4c
mov esi, eax
add esp, 0x14
test esi, esi
js 0x67f82b
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.0068e80c
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 0x67f848
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.0067da4c
mov esi, eax
add esp, 0x14
test esi, esi
jns 0x67f7cc
push 0x43efd0
push 2
call fcn.0066febc
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 0x67f87f
cmp ecx, dword [0x443d00]
je 0x67f86e
cmp ecx, dword [0x443cb8]
je 0x67f86e
cmp ecx, dword [0x443c94]
jne 0x67f87f
or edi, 0x800
mov dword [esp + 0x10], edi
mov dword [esp + 0x90], edi
mov esi, dword [esp + 0x28]
test esi, esi
je 0x67f4fe
cmp ecx, dword [0x443d08]
je 0x67f4fe
cmp ecx, dword [0x443cf4]
je 0x67f4fe
cmp ecx, dword [0x443d04]
je 0x67f4fe
cmp ecx, dword [0x443cc0]
je 0x67f4fe
cmp ecx, dword [0x443ca8]
je 0x67f4fe
cmp ecx, dword [0x443cdc]
je 0x67f4fe
mov edi, dword [esp + 0x24]
test edi, edi
je 0x67f8ea
mov edx, edi
call fcn.0067059c
test eax, eax
jne 0x67f4fe
mov edx, dword [0x443c8c]
call fcn.0067059c
test eax, eax
jne 0x67f4fe
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x3c]
lea eax, [ecx - 2]
cmp edx, eax
jle 0x67f93f
lea eax, [esp + 0x168]
mov ecx, esi
push eax
lea edx, [esp + 0x3c]
call fcn.0067e4ec
mov esi, eax
add esp, 4
mov dword [esp + 0x28], esi
test esi, esi
je 0x67f578
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x3c]
lea eax, [ecx - 2]
cmp edx, eax
jg 0x67f90c
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.0068e74c
add esp, 0xc
test eax, eax
jns 0x67f9a2
lea eax, [esp + 0x168]
mov ecx, esi
push eax
lea edx, [esp + 0x3c]
call fcn.0067e4ec
mov esi, eax
add esp, 4
mov dword [esp + 0x28], esi
test esi, esi
je 0x67f578
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x3c]
jmp 0x67f95c
mov dword [esp + 0x3c], eax
jmp 0x67f4fe
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.0067d9cc
add esp, 0xc
test eax, eax
jns 0x67f9f8
mov al, byte [ecx + esi]
cmp al, 0xd
je 0x67fc25
cmp al, 0xa
je 0x67fc25
push 0x43ed20
push 1
jmp 0x67f4f6
cmp dword [esp + 0x154], 0
je 0x67fa0c
push 0x43ed38
jmp 0x67f4f4
mov eax, dword [esp + 0x124]
mov esi, ecx
mov edx, dword [esp + 0x13c]
sub edx, eax
lea ecx, [esi + eax]
call fcn.0068e6ac
test eax, eax
je 0x67f558
mov edi, dword [esp + 0xc]
cmp edi, dword [0x443c78]
jne 0x67fa4a
cmp dword [esp + 0x74], 0
jne 0x67fa9c
mov dword [esp + 0x74], eax
jmp 0x67f506
cmp edi, dword [0x443ce0]
jne 0x67fa62
cmp dword [esp + 0x78], 0
jne 0x67fa9c
mov dword [esp + 0x78], eax
jmp 0x67f506
cmp edi, dword [0x443cac]
jne 0x67fa7a
cmp dword [esp + 0x70], 0
jne 0x67fa9c
mov dword [esp + 0x70], eax
jmp 0x67f506
cmp edi, dword [0x443cd4]
jne 0x67ffa0
cmp dword [esp + 0x88], 0
jne 0x67fa9c
mov dword [esp + 0x88], eax
jmp 0x67f506
push eax
call fcn.0068f208
add esp, 4
jmp 0x67f506
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.00685e8c
add esp, 8
test eax, eax
jns 0x67fb37
mov eax, dword [esp + 0xc]
cmp eax, dword [0x443c74]
je 0x67fb22
add eax, 0xa
push eax
push 0x43ec8c
push 2
call fcn.0066febc
add esp, 0xc
test byte [0x43fedc], 2
je 0x67fb13
mov eax, dword [0x443d10]
test eax, eax
je 0x67fb13
push eax
mov eax, dword [esp + 0xc]
sub esi, edi
push 1
add eax, edi
push esi
push eax
call fcn.00690860
add esp, 0x10
push 0x43eca0
push 2
call fcn.0066febc
add esp, 8
or eax, 0xffffffff
or ecx, eax
mov dword [esp + 0x118], eax
mov dword [esp + 0x11c], ecx
jmp 0x67fb45
mov ecx, dword [esp + 0x11c]
mov eax, dword [esp + 0x118]
mov esi, dword [esp + 0xc]
cmp esi, dword [0x443c7c]
jne 0x67fb76
test ecx, ecx
jl 0x67f4fe
jg 0x67fb63
test eax, eax
jb 0x67f4fe
mov dword [esp + 0xdc], eax
mov dword [esp + 0xf8], ecx
jmp 0x67f4fe
cmp esi, dword [0x443c74]
jne 0x67fbc8
test ecx, ecx
jl 0x67fb9b
jg 0x67fb88
test eax, eax
jb 0x67fb9b
mov dword [esp + 0xbc], eax
mov dword [esp + 0xc0], ecx
jmp 0x67f4fe
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 0x67f4fe
cmp esi, dword [0x443cfc]
jne 0x67fbe3
mov dword [esp + 0xec], eax
mov dword [esp + 0xfc], ecx
jmp 0x67f4fe
cmp esi, dword [0x443ca4]
jne 0x67fbfe
mov dword [esp + 0xd8], eax
mov dword [esp + 0xcc], ecx
jmp 0x67f4fe
cmp esi, dword [0x443c98]
mov edi, dword [esp + 0xc]
mov esi, dword [esp + 8]
jne 0x67f506
mov dword [esp + 0xb8], eax
mov dword [esp + 0xd4], ecx
jmp 0x67f506
mov esi, ecx
jmp 0x67f502
xor eax, eax
mov dword [esp + 0x6c], eax
push 0x43ec48
jmp 0x67f54e
mov eax, dword [esp + 0x28]
jmp 0x67f560
push 0x43ecec
jmp 0x67f54e
push 0x43eccc
jmp 0x67f54e
push 0x43ee68
push 1
call fcn.0066febc
add esp, 8
test byte [0x43fedc], 1
je 0x67fc90
mov eax, dword [0x443d10]
test eax, eax
je 0x67fc90
push eax
mov eax, dword [esp + 0x30]
sub eax, esi
push 1
push eax
lea eax, [edi + esi]
push eax
call fcn.00690860
add esp, 0x10
push 0x43ee88
jmp 0x67f54e
push 0x43ee8c
jmp 0x67f54e
push 0x43ef2c
jmp 0x67f54e
push 0x43ef0c
jmp 0x67f54e
push 0x43ef78
jmp 0x67f54e
push 0x43ec6c
jmp 0x67f54e
mov esi, dword [esp + 0x15c]
test esi, esi
je 0x67fcf6
mov edx, dword [esp + 0x3c]
test edx, edx
js 0x67f558
mov ecx, dword [esp + 0x28]
call fcn.0066ff0c
test eax, eax
je 0x67f558
mov dword [esi], eax
mov eax, dword [esp + 0x28]
lea ecx, [esp + 0x168]
cmp eax, ecx
je 0x67fd0e
push eax
call fcn.0068f208
add esp, 4
mov ecx, dword [esp + 0x148]
test ecx, ecx
je 0x67fd24
mov eax, dword [esp + 0x48]
test eax, eax
jne 0x67fd24
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 0x67fd44
mov dword [ecx], eax
mov ecx, dword [esp + 0x130]
test ecx, ecx
je 0x67fd66
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 0x67fe42
cmp dword [esp + 0xcc], 0
jg 0x67fdbc
jl 0x67fd8a
cmp dword [esp + 0xd8], 0
jae 0x67fdbc
cmp dword [esp + 0xd4], 0
jg 0x67fdbc
jl 0x67fda0
cmp dword [esp + 0xb8], 0
jae 0x67fdbc
cmp dword [esp + 0x70], 0
jne 0x67fdbc
cmp dword [esp + 0x78], 0
jne 0x67fdbc
cmp dword [esp + 0x88], 0
jne 0x67fdbc
xor esi, esi
jmp 0x67fe39
call fcn.0067c7ec
mov esi, eax
test esi, esi
je 0x67fe08
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 0x67fe39
push 0x43eff4
push 1
call fcn.0066febc
mov eax, dword [esp + 0x78]
add esp, 8
test eax, eax
je 0x67fe28
push eax
call fcn.0068f208
add esp, 4
mov eax, dword [esp + 0x78]
test eax, eax
je 0x67fe39
push eax
call fcn.0068f208
add esp, 4
mov eax, dword [esp + 0xf0]
mov dword [eax], esi
mov eax, dword [esp + 0x158]
test eax, eax
je 0x67fe4f
mov dword [eax], edi
mov eax, dword [esp + 0x138]
test eax, eax
je 0x67fe6d
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 0x67fe8b
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 0x67fea9
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 0x67feba
mov eax, dword [esp + 0x60]
mov dword [ecx], eax
mov ecx, dword [esp + 0x128]
mov eax, dword [esp + 0x74]
test ecx, ecx
je 0x67fecd
mov dword [ecx], eax
jmp 0x67feda
test eax, eax
je 0x67feda
push eax
call fcn.0068f208
add esp, 4
mov ecx, dword [esp + 0x12c]
test ecx, ecx
je 0x67fefc
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 0x67ff1e
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 0x67ff31
mov dword [ecx], eax
jmp 0x67ff3c
test eax, eax
je 0x67ff3c
mov ecx, eax
call fcn.006701cc
mov ecx, dword [esp + 0xe0]
mov eax, dword [esp + 0x84]
test ecx, ecx
je 0x67ff52
mov dword [ecx], eax
jmp 0x67ff5d
test eax, eax
je 0x67ff5d
mov ecx, eax
call fcn.006701cc
mov ecx, dword [esp + 0xe8]
mov eax, dword [esp + 0x6c]
test ecx, ecx
je 0x67ff70
mov dword [ecx], eax
jmp 0x67ff7b
test eax, eax
je 0x67ff7b
mov ecx, eax
call fcn.006701cc
mov ecx, dword [esp + 0x24]
test ecx, ecx
je 0x67ff88
call fcn.0067049c
mov ecx, dword [esp + 0x36c]
mov eax, dword [esp + 0x58]
pop edi
pop esi
xor ecx, esp
call fcn.0068f1f9
mov esp, ebp
pop ebp
ret
call fcn.0068f834
int3