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

Disassembly:
sub esp, 0x14
push ebx
push ebp
push esi
push edi
lea eax, [esp + 0x14]
call fcn.00207270
mov eax, dword [esp + 0x4c]
mov ebp, dword [esp + 0x14]
mov edi, dword [esp + 0x6c]
mov ebx, dword [esp + 0x7c]
mov esi, eax
and esi, 0xff
add esi, esi
mov ecx, eax
add esi, esi
mov edx, eax
shr ecx, 0x14
and edx, 0x70000
xor ecx, ebp
add esi, esi
shl edx, 8
and ecx, 0x100
sar edx, 0x18
or esi, edx
mov edx, dword [esp + 0x18]
xor ebp, ecx
mov ecx, eax
shl esi, 0xc
and ecx, 0x1000000
or esi, ecx
add esi, esi
and eax, 0xfc000000
or esi, eax
shl esi, 5
and edx, 0x2003ffff
mov eax, edi
shr eax, 0x1b
or esi, edx
and eax, 1
jne 0x1f7f02
test ebx, 0x8000000
jne 0x1f7f02
test byte [esp + 0x8f], 8
jne 0x1f7f02
xor edx, edx
jmp 0x1f7f07
mov edx, 1
mov ecx, dword [esp + 0x20]
shl edx, 0x1e
xor edx, ecx
and edx, 0x40000000
xor ecx, edx
test eax, eax
je 0x1f7f25
mov eax, dword [esp + 0x68]
add eax, 0xfffffffc
jmp 0x1f7f4e
test ebx, 0x8000000
je 0x1f7f36
mov eax, dword [esp + 0x78]
add eax, 0xfffffffc
jmp 0x1f7f4e
test byte [esp + 0x8f], 8
je 0x1f7f4c
mov eax, dword [esp + 0x88]
add eax, 0xfffffffc
jmp 0x1f7f4e
xor eax, eax
shl eax, 0x13
xor eax, ecx
and eax, 0x3ff80000
xor ecx, eax
test edi, 0x10000000
jne 0x1f7f78
test ebx, 0x10000000
jne 0x1f7f78
test byte [esp + 0x8f], 0x10
jne 0x1f7f78
xor eax, eax
jmp 0x1f7f7d
mov eax, 1
shl eax, 0x1f
and ecx, 0x7fffffff
or eax, ecx
mov dword [esp + 0x20], eax
push 0xa
xor ecx, ecx
lea eax, [esp + 0x14]
call fcn.0013dc60
mov eax, dword [eax]
push eax
lea ecx, [esp + 0x54]
call fcn.00207240
test eax, eax
mov ecx, dword [esp + 0x5c]
je 0x1f7fb5
or ebp, 0x40000000
jmp 0x1f7fda
test cl, cl
je 0x1f7fda
mov eax, dword [esp + 0x50]
cmp al, 3
jne 0x1f7fcb
sar eax, 8
cdq
sub eax, edx
sar eax, 1
jmp 0x1f7fce
sar eax, 8
mov edx, dword [esp + 0x28]
cmp eax, dword [edx + 0x54]
jbe 0x1f7fda
mov dword [edx + 0x54], eax
mov eax, dword [esp + 0x30]
lea edx, [eax - 0x1b]
cmp edx, 0x2e
ja case.0x1f7fed.28
movzx edx, byte [edx + 0x1f8408]
jmp dword [edx*4 + 0x1f83f4]
mov ebx, dword [esp + 0x1c]
and ebp, 0xeeffffff
or ebp, 0x2e000000
jmp 0x1f8051
mov ebx, dword [esp + 0x1c]
and ebp, 0xefffffff
or ebp, 0x2f000000
jmp 0x1f8051
test byte [esp + 0x91], 1
jne case.0x1f7fed.28
mov ebx, dword [esp + 0x1c]
and ebp, 0xc0ffffff
jmp 0x1f8051
mov edx, eax
mov ebx, eax
shl edx, 0x18
shl ebx, 0x19
xor ebx, dword [esp + 0x1c]
xor edx, ebp
and edx, 0x3f000000
and ebx, 0x7fffffff
shl eax, 0x19
xor ebp, edx
xor ebx, eax
mov eax, dword [esp + 0x34]
cmp eax, 9
ja case.0x1f8061.2
movzx eax, byte [eax + 0x1f844c]
jmp dword [eax*4 + 0x1f8438]
and ebp, 0xff7fffff
or ebp, str.Xqv
jmp case.0x1f8061.2
and ebp, 0xff3fffff
jmp case.0x1f8061.2
and ebp, 0xffbfffff
or ebp, 0x800000
jmp case.0x1f8061.2
or ebp, 0xc00000
mov eax, dword [esp + 0x60]
test al, al
jne 0x1f809f
sar eax, 8
jmp 0x1f80be
mov eax, dword [esp + 0x70]
test al, al
jne 0x1f80ac
sar eax, 8
jmp 0x1f80be
mov eax, dword [esp + 0x80]
test al, al
jne 0x1f80bc
sar eax, 8
jmp 0x1f80be
xor eax, eax
shl eax, 0xd
xor eax, ebp
and eax, 0x1e000
xor ebp, eax
mov edx, ecx
shl edx, 0x10
mov eax, ecx
shr eax, 2
sar edx, 0x18
xor eax, ebp
shl edx, 0x1c
and eax, 0x200000
xor edx, ebx
xor ebp, eax
movsx eax, byte [esp + 0x50]
and edx, 0x70000000
xor ebx, edx
sub eax, 2
je 0x1f8109
sub eax, 1
je 0x1f8101
sub eax, 7
je 0x1f8109
or ebp, 0x80
jmp 0x1f810f
and ebp, 0xffffff7f
mov eax, dword [esp + 0x48]
mov dl, cl
and eax, 0xf
shl eax, 8
shl ecx, 9
sar ecx, 0x1e
shl ecx, 0x1f
and ebp, 0x7fe1e181
and edx, 0xf
or edx, eax
mov eax, dword [esp + 0x50]
shl edx, 8
sar eax, 8
mov dword [esp + 0x4c], eax
and dword [esp + 0x4c], 0x3f
or edx, dword [esp + 0x4c]
or ecx, ebp
and ecx, 0xffe1ffff
add edx, edx
or edx, ecx
cmp dword [esp + 0x30], 0x41
mov ecx, dword [esp + 0x60]
mov dword [esp + 0x14], edx
jne 0x1f81aa
mov eax, dword [esp + 0x68]
mov edx, dword [esp + 0x64]
mov dword [esp + 0x70], ecx
mov dword [esp + 0x78], eax
push 2
xor ecx, ecx
lea eax, [esp + 0x50]
mov dword [esp + 0x78], edx
mov ebp, edi
call fcn.0013dc60
mov ecx, dword [eax]
push ecx
lea eax, [esp + 0x54]
call fcn.00207200
mov edx, dword [esp + 0x54]
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x50]
mov edi, dword [esp + 0x5c]
mov dword [esp + 0x64], edx
mov dword [esp + 0x68], eax
jmp 0x1f81ae
mov ebp, dword [esp + 0x7c]
xor edx, edx
mov eax, edi
and eax, 0xff
add eax, eax
cmp cl, 3
sete dl
and esi, 0xdffc0000
and edx, 1
or eax, edx
shl eax, 4
mov edx, edi
and edx, 0x2000000
or eax, edx
add eax, eax
mov edx, ecx
add eax, eax
sar edx, 8
movsx ecx, cl
and edx, 0x3f
or eax, edx
mov dl, byte [ecx + 0x405d18]
mov ecx, edi
shl edi, 7
add eax, eax
sar edi, 0x1c
add eax, eax
shl edi, 0x13
and edx, 3
shr ecx, 9
or eax, edx
xor edi, ebx
and ecx, 0x20000
or eax, ecx
and edi, 0x380000
or eax, esi
mov esi, dword [0x5276f0]
xor ebx, edi
cmp byte [esp + 0x38], 0
je 0x1f825d
mov edx, dword [esp + 0x44]
mov ecx, dword [esp + 0x40]
and edx, 0xff
shl edx, 9
and ecx, 0xff
or edx, ecx
mov ecx, dword [esp + 0x3c]
shl edx, 8
and ecx, 0xff
or edx, ecx
add edx, edx
add edx, edx
and ebx, 0xf8040003
jmp 0x1f82e7
mov ecx, dword [esp + 0x70]
cmp cl, 6
jne 0x1f8278
sar ecx, 8
mov edx, dword [esi + ecx*4]
xor edx, ebx
and edx, 0x7fffc
xor ebx, edx
jmp 0x1f82e9
mov edx, ebp
and edx, 0xe00000
shl edx, 7
sar edx, 0x1c
shl edx, 0xd
mov edi, ebp
and edi, 0xff
or edx, edi
add edx, edx
mov dword [esp + 0x30], eax
xor eax, eax
cmp cl, 3
sete al
mov edi, ecx
sar edi, 8
and edi, 0x3f
movsx ecx, cl
mov cl, byte [ecx + 0x405d18]
and eax, 1
or edx, eax
mov eax, dword [esp + 0x30]
shl edx, 6
or edx, edi
mov edi, ebp
shr edi, 2
and edi, 0x1000000
add edx, edx
and ebp, 0x2000000
or edi, ebp
add edx, edx
shr edi, 7
or edx, edi
and ecx, 3
or edx, ecx
and ebx, 0xfe380000
or ebx, edx
mov ecx, dword [esp + 0x80]
cmp cl, 6
jne 0x1f830e
sar ecx, 8
mov edx, dword [esi + ecx*4]
mov esi, dword [esp + 0x20]
xor edx, esi
and edx, 0x7fffc
xor esi, edx
jmp 0x1f8392
mov esi, dword [esp + 0x8c]
mov edx, esi
and edx, 0xff
add edx, edx
mov dword [esp + 0x30], eax
xor eax, eax
cmp cl, 3
sete al
mov edi, ecx
sar edi, 8
and edi, 0x3f
movsx ecx, cl
mov cl, byte [ecx + 0x405d18]
and eax, 1
or edx, eax
mov eax, dword [esp + 0x30]
shl edx, 6
or edx, edi
mov edi, esi
mov ebp, esi
shr edi, 2
add edx, edx
and edi, 0x1000000
and ebp, 0x2000000
shl esi, 7
add edx, edx
or edi, ebp
sar esi, 0x1c
shr edi, 7
and ecx, 3
or edx, edi
or edx, ecx
mov ecx, dword [esp + 0x20]
shl esi, 0x19
xor esi, ebx
and ecx, 0xfff80000
or edx, ecx
and esi, 0xe000000
xor ebx, esi
mov dword [esp + 0x20], edx
mov esi, edx
mov edi, dword [esp + 0x14]
mov edx, edi
and edx, 0x3f000000
cmp edx, 0x1f000000
jne 0x1f83d6
mov ecx, eax
and cl, 3
cmp cl, 1
jne 0x1f83d6
test bl, 3
jne 0x1f83d6
mov edx, esi
and dl, 3
cmp dl, cl
jne 0x1f83d6
mov ecx, ebx
xor ecx, esi
and ecx, 0x100
xor esi, ecx
mov edx, ebx
xor edx, esi
and edx, 0xfc
xor esi, edx
mov ecx, dword [esp + 0x2c]
mov edx, ecx
mov dword [edx], edi
mov dword [edx + 4], eax
mov dword [edx + 8], ebx
pop edi
mov dword [edx + 0xc], esi
pop esi
pop ebp
mov eax, ecx
pop ebx
add esp, 0x14
ret 0x6c