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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0xd8
mov ebx, dword [ebp + 8]
mov eax, dword [0x1cf3040]
xor eax, ebp
mov dword [esp + 0xd0], eax
mov eax, dword [ebx]
mov dword [ebx + 4], eax
mov ecx, dword [0x1cf8c50]
test ecx, ecx
je 0x1c69fd7
xor esi, esi
lea eax, [esp + 0x2c]
mov dword [eax], esi
mov dword [eax + 4], esi
mov dword [eax + 8], esi
push eax
call fcn.01c4a9a0
test eax, eax
je 0x1c6a000
mov esi, dword [esp + 0x2c]
test esi, esi
je 0x1c69fd7
mov edi, dword [esp + 0x30]
mov eax, esi
cmp edi, esi
jne 0x1c69fbe
jmp 0x1c69fca
push dword [edi - 0x34]
call fcn.01c95155
add esp, 4
cmp byte [edi - 0x35], 0
jns 0x1c69fb7
push dword [edi - 0x40]
call fcn.01c95155
add esp, 4
add edi, 0xffffffb0
cmp edi, esi
je 0x1c69fc6
cmp byte [edi - 0x29], 0
jns 0x1c69fa6
jmp 0x1c69f9b
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x30], esi
push eax
call fcn.01c95155
add esp, 4
mov ecx, dword [esp + 0xd0]
xor ecx, ebp
call fcn.01c98173
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [esp + 0x20]
mov dword [esp + 0x24], esi
push eax
call fcn.01c95155
add esp, 4
jmp 0x1c69f87
lea eax, [esp + 0x20]
mov dword [eax], esi
mov dword [eax + 4], esi
mov dword [eax + 8], esi
mov ecx, dword [0x1cf8c50]
push eax
call fcn.01c3dc60
test eax, eax
jne 0x1c6a075
mov edi, dword [esp + 0x2c]
mov eax, dword [esp + 0x30]
mov dword [esp + 0x10], eax
cmp edi, eax
jne 0x1c6a2b0
mov edi, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
mov dword [esp + 0x10], eax
cmp edi, eax
jne 0x1c6a0ea
mov esi, dword [ebx + 4]
mov ecx, dword [ebx]
mov eax, esi
sub eax, ecx
sar eax, 3
imul eax, eax, 0x286bca1b
bsr eax, eax
xor eax, 0x1f
add eax, eax
xor eax, 0x3e
mov edx, esi
xor esi, esi
cmp edx, ecx
cmovne esi, eax
push 1
push esi
call fcn.01c6a6f0
add esp, 8
mov esi, dword [esp + 0x20]
test esi, esi
je 0x1c69f87
mov edi, dword [esp + 0x24]
mov eax, esi
cmp edi, esi
jne 0x1c6a0b7
jmp 0x1c69ff1
push dword [edi - 0x34]
call fcn.01c95155
add esp, 4
cmp byte [edi - 0x35], 0
jns 0x1c6a0ac
push dword [edi - 0x40]
call fcn.01c95155
add esp, 4
add edi, 0xffffffb0
cmp edi, esi
je 0x1c69fed
cmp byte [edi - 0x29], 0
jns 0x1c6a09b
jmp 0x1c6a090
mov eax, 0x98
push eax
lea eax, [esp + 0x3c]
push eax
push esi
call fcn.01c994a0
add esp, 0xc
mov eax, 0x98
add esi, eax
mov dword [ebx + 4], esi
add edi, 0x50
cmp edi, dword [esp + 0x10]
je 0x1c6a047
push 0x98
push 0
lea eax, [esp + 0x40]
push eax
call fcn.01c99a20
add esp, 0xc
mov ecx, edi
lea esi, [esp + 0x14]
push esi
call fcn.01cd4210
mov cl, byte [esp + 0x1f]
test cl, cl
mov eax, dword [esp + 0x14]
mov edx, esi
cmovs edx, eax
xor esi, esi
mov ch, byte [edx + esi]
mov byte [esp + esi + 0x38], ch
test ch, ch
je 0x1c6a131
inc esi
cmp esi, 0x40
jne 0x1c6a11b
mov byte [esp + 0x77], 0
test cl, cl
jns 0x1c6a13e
push eax
call fcn.01c95155
add esp, 4
mov eax, dword [edi + 0x28]
mov ecx, dword [edi + 0x2c]
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], ecx
xor ecx, ecx
mov dword [esp + 0xc0], ecx
mov dword [esp + 0xc4], ecx
cmp byte [edi + 0x44], 1
mov eax, 2
sbb eax, ecx
mov dword [esp + 0xc8], eax
mov esi, dword [ebx + 4]
mov eax, dword [ebx + 8]
cmp esi, eax
jb 0x1c6a0bf
mov ecx, dword [ebx]
sub esi, ecx
sar esi, 3
imul esi, esi, 0x286bca1b
lea edx, [esi + 1]
cmp edx, 0x1af286c
jae 0x1c6a471
sub eax, ecx
sar eax, 3
imul eax, eax, 0x286bca1b
lea ecx, [eax + eax]
cmp ecx, edx
cmova edx, ecx
cmp eax, 0xd79435
mov eax, 0x1af286b
cmovae edx, eax
test edx, edx
mov dword [esp + 0xc], edx
je 0x1c6a26c
cmp edx, 0x1af286c
jae 0x1c6a477
imul eax, edx, 0x98
push eax
call fcn.01c9515a
add esp, 4
mov dword [esp], edi
imul esi, esi, 0x98
mov dword [esp + 8], eax
add esi, eax
mov eax, 0x98
push eax
lea eax, [esp + 0x3c]
push eax
push esi
call fcn.01c994a0
add esp, 0xc
mov edx, dword [ebx]
mov ebx, dword [ebx + 4]
cmp ebx, edx
je 0x1c6a273
mov dword [esp + 4], esi
mov edi, esi
mov eax, 0xffffff68
add ebx, eax
add edi, eax
push 0x98
push ebx
push edi
mov esi, edx
call fcn.01c994a0
mov edx, esi
add esp, 0xc
cmp ebx, esi
jne 0x1c6a211
mov ebx, dword [ebp + 8]
mov edx, dword [ebx]
mov esi, dword [esp + 4]
imul eax, dword [esp + 0xc], 0x98
mov ecx, dword [esp + 8]
add ecx, eax
mov dword [ebx], edi
mov eax, 0x98
add esi, eax
mov dword [ebx + 4], esi
mov dword [ebx + 8], ecx
test edx, edx
je 0x1c6a264
push edx
call fcn.01c95155
add esp, 4
mov edi, dword [esp]
jmp 0x1c6a0da
xor eax, eax
jmp 0x1c6a1df
mov edi, esi
mov ebx, dword [ebp + 8]
jmp 0x1c6a23a
xor eax, eax
xor ecx, ecx
xor edx, edx
jmp 0x1c6a34d
mov eax, 0x98
push eax
lea eax, [esp + 0x3c]
push eax
push esi
call fcn.01c994a0
add esp, 0xc
mov eax, 0x98
add esi, eax
mov dword [ebx + 4], esi
add edi, 0x50
cmp edi, dword [esp + 0x10]
je 0x1c6a030
push 0x98
push 0
lea eax, [esp + 0x40]
push eax
call fcn.01c99a20
add esp, 0xc
mov ecx, edi
lea esi, [esp + 0x14]
push esi
call fcn.01cd4210
mov cl, byte [esp + 0x1f]
test cl, cl
mov eax, dword [esp + 0x14]
mov edx, esi
cmovs edx, eax
xor esi, esi
mov ch, byte [edx + esi]
mov byte [esp + esi + 0x38], ch
test ch, ch
je 0x1c6a2f7
inc esi
cmp esi, 0x40
jne 0x1c6a2e1
mov byte [esp + 0x77], 0
test cl, cl
jns 0x1c6a304
push eax
call fcn.01c95155
add esp, 4
movsd xmm0, qword [edi + 0x28]
movsd qword [esp + 0x78], xmm0
lea eax, [edi + 0x1c]
cmp byte [edi + 0x27], 0
jns 0x1c6a31a
mov eax, dword [eax]
xor ecx, ecx
mov dl, byte [eax + ecx]
mov byte [esp + ecx + 0x80], dl
test dl, dl
je 0x1c6a338
inc ecx
cmp ecx, 0x40
jne 0x1c6a31c
mov byte [esp + 0xbf], 0
cmp byte [edi + 0x30], 0
je 0x1c6a27a
mov eax, dword [edi + 0x38]
mov ecx, dword [edi + 0x3c]
mov edx, 3
mov dword [esp + 0xc0], eax
mov dword [esp + 0xc4], ecx
mov dword [esp + 0xc8], edx
mov esi, dword [ebx + 4]
mov eax, dword [ebx + 8]
cmp esi, eax
jb 0x1c6a285
mov ecx, dword [ebx]
sub esi, ecx
sar esi, 3
imul esi, esi, 0x286bca1b
lea edx, [esi + 1]
cmp edx, 0x1af286c
jae 0x1c6a46e
sub eax, ecx
sar eax, 3
imul eax, eax, 0x286bca1b
lea ecx, [eax + eax]
cmp ecx, edx
cmova edx, ecx
cmp eax, 0xd79435
mov eax, 0x1af286b
cmovae edx, eax
test edx, edx
mov dword [esp + 0xc], edx
je 0x1c6a460
cmp edx, 0x1af286c
jae 0x1c6a474
imul eax, edx, 0x98
push eax
call fcn.01c9515a
add esp, 4
mov dword [esp], edi
imul esi, esi, 0x98
mov dword [esp + 8], eax
add esi, eax
mov eax, 0x98
push eax
lea eax, [esp + 0x3c]
push eax
push esi
call fcn.01c994a0
add esp, 0xc
mov edx, dword [ebx]
mov ebx, dword [ebx + 4]
cmp ebx, edx
je 0x1c6a467
mov dword [esp + 4], esi
mov edi, esi
mov eax, 0xffffff68
add ebx, eax
add edi, eax
push 0x98
push ebx
push edi
mov esi, edx
call fcn.01c994a0
mov edx, esi
add esp, 0xc
cmp ebx, esi
jne 0x1c6a405
mov ebx, dword [ebp + 8]
mov edx, dword [ebx]
mov esi, dword [esp + 4]
imul eax, dword [esp + 0xc], 0x98
mov ecx, dword [esp + 8]
add ecx, eax
mov dword [ebx], edi
mov eax, 0x98
add esi, eax
mov dword [ebx + 4], esi
mov dword [ebx + 8], ecx
test edx, edx
je 0x1c6a458
push edx
call fcn.01c95155
add esp, 4
mov edi, dword [esp]
jmp 0x1c6a2a0
xor eax, eax
jmp 0x1c6a3d3
mov edi, esi
mov ebx, dword [ebp + 8]
jmp 0x1c6a42e
int3
int3
int3
int3