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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x130
mov edi, dword [ebp + 0xc]
mov ebx, dword [ebp + 8]
lea esi, [esp + 0xf4]
push 0x6b7b2310
push dword [ebp + 0x10]
push esi
call fcn.6b64c110
add esp, 0xc
push esi
push esi
call fcn.6b64ca80
add esp, 8
lea eax, [ebx + 0x40]
mov dword [esp + 0x28], eax
neg edi
mov dword [esp + 0x1c], edi
lea eax, [ebx + 0xc0]
mov dword [esp + 0x24], eax
lea eax, [ebx + 0x80]
mov dword [esp + 0x20], eax
mov eax, 0x12
jmp 0x6b64590c
mov eax, dword [esp + 0xc]
test eax, eax
je 0x6b645f9f
cmp eax, 0x12
mov dword [esp + 8], eax
je 0x6b645928
mov ecx, dword [ebp + 8]
mov edx, ecx
push 0
call fcn.6b644e40
mov eax, dword [esp + 0xc]
add esp, 4
dec eax
mov dword [esp + 0xc], eax
xor ebx, ebx
mov eax, dword [ebp + 0xc]
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x10], ecx
jmp 0x6b645978
cmp eax, 1
setne al
cmp ebx, 4
sete cl
and cl, al
movzx eax, cl
mov ecx, dword [ebp + 8]
lea edx, [esp + 0x30]
push eax
call fcn.6b645fd0
add esp, 4
inc ebx
add dword [esp + 0x10], 0xfffff400
mov eax, dword [esp + 0x18]
add eax, 0xc00
cmp ebx, 5
je 0x6b645900
mov dword [esp + 0x18], eax
imul eax, ebx, 0x5a
mov edi, dword [esp + 0xc]
lea ecx, [edi + eax]
mov edx, ecx
shr edx, 5
mov edx, dword [esp + edx*4 + 0xf4]
shr edx, cl
and edx, 1
lea ecx, [edi + eax + 0x12]
mov esi, ecx
shr esi, 5
mov esi, dword [esp + esi*4 + 0xf4]
shr esi, cl
and esi, 1
lea edx, [edx + esi*2]
lea ecx, [edi + eax + 0x24]
mov esi, ecx
shr esi, 5
mov esi, dword [esp + esi*4 + 0xf4]
shr esi, cl
and esi, 1
lea edx, [edx + esi*4]
lea ecx, [edi + eax + 0x36]
mov esi, ecx
shr esi, 5
mov esi, dword [esp + esi*4 + 0xf4]
shr esi, cl
and esi, 1
lea edx, [edx + esi*8]
lea ecx, [edi + eax + 0x48]
cmp ecx, 0x1bd
ja 0x6b645a01
mov eax, ecx
shr eax, 5
mov eax, dword [esp + eax*4 + 0xf4]
shr eax, cl
shl eax, 4
and eax, 0x10
or edx, eax
mov eax, edx
shr eax, 4
dec eax
mov dword [esp + 0x2c], eax
xor edx, eax
and edx, 0xf
mov dword [esp + 0x14], ebx
lea edi, [ebx + ebx*2]
shl edi, 0xa
push 0xbf
push 0
lea eax, [esp + 0x39]
push eax
mov ebx, edx
call sub.msvcrt.dll_memset
add esp, 0xc
mov esi, ebx
lea eax, [ebx - 1]
sar eax, 0x1f
movzx ecx, al
mov edx, dword [ebp + 0xc]
mov al, byte [edx + edi]
and al, cl
mov byte [esp + 0x30], al
mov al, byte [edx + edi + 1]
and al, cl
mov byte [esp + 0x31], al
mov eax, 2
mov edi, dword [esp + 0x18]
nop
nop
nop
nop
nop
nop
movzx edx, byte [edi + eax]
and dl, cl
or byte [esp + eax + 0x30], dl
inc eax
cmp eax, 0xc0
jne 0x6b645a60
mov edx, esi
lea ecx, [esi + 0x7fffffff]
lea edx, [esi - 2]
and edx, ecx
sar edx, 0x1f
movzx ecx, dl
sub eax, dword [esp + 0x10]
mov edx, 0xffffff40
nop
nop
movzx ebx, byte [eax]
and bl, cl
inc eax
or byte [esp + edx + 0xf0], bl
inc edx
jne 0x6b645a90
mov edx, esi
lea ecx, [esi + 0x7ffffffe]
lea edx, [esi - 3]
and edx, ecx
sar edx, 0x1f
movzx ecx, dl
mov edx, 0xffffff40
nop
nop
nop
nop
movzx ebx, byte [eax]
and bl, cl
inc eax
or byte [esp + edx + 0xf0], bl
inc edx
jne 0x6b645ac0
mov edx, esi
lea ecx, [esi + 0x7ffffffd]
lea edx, [esi - 4]
and edx, ecx
sar edx, 0x1f
movzx ecx, dl
mov edx, 0xffffff40
nop
nop
nop
nop
movzx ebx, byte [eax]
and bl, cl
inc eax
or byte [esp + edx + 0xf0], bl
inc edx
jne 0x6b645af0
mov edx, esi
lea ecx, [esi + 0x7ffffffc]
lea edx, [esi - 5]
and edx, ecx
sar edx, 0x1f
movzx ecx, dl
mov edx, 0xffffff40
nop
nop
nop
nop
movzx ebx, byte [eax]
and bl, cl
inc eax
or byte [esp + edx + 0xf0], bl
inc edx
jne 0x6b645b20
mov edx, esi
lea ecx, [esi + 0x7ffffffb]
lea edx, [esi - 6]
and edx, ecx
sar edx, 0x1f
movzx ecx, dl
mov edx, 0xffffff40
nop
nop
nop
nop
movzx ebx, byte [eax]
and bl, cl
inc eax
or byte [esp + edx + 0xf0], bl
inc edx
jne 0x6b645b50
mov edx, esi
lea ecx, [esi + 0x7ffffffa]
lea edx, [esi - 7]
and edx, ecx
sar edx, 0x1f
movzx ecx, dl
mov edx, 0xffffff40
nop
nop
nop
nop
movzx ebx, byte [eax]
and bl, cl
inc eax
or byte [esp + edx + 0xf0], bl
inc edx
jne 0x6b645b80
mov edx, esi
lea ecx, [esi + 0x7ffffff9]
lea edx, [esi - 8]
and edx, ecx
sar edx, 0x1f
movzx ecx, dl
mov edx, 0xffffff40
nop
nop
nop
nop
movzx ebx, byte [eax]
and bl, cl
inc eax
or byte [esp + edx + 0xf0], bl
inc edx
jne 0x6b645bb0
mov edx, esi
lea ecx, [esi + 0x7ffffff8]
lea edx, [esi - 9]
and edx, ecx
sar edx, 0x1f
movzx ecx, dl
mov edx, 0xffffff40
nop
nop
nop
nop
movzx ebx, byte [eax]
and bl, cl
inc eax
or byte [esp + edx + 0xf0], bl
inc edx
jne 0x6b645be0
mov edx, esi
lea ecx, [esi + 0x7ffffff7]
lea edx, [esi - 0xa]
and edx, ecx
sar edx, 0x1f
movzx ecx, dl
mov edx, 0xffffff40
nop
nop
nop
nop
movzx ebx, byte [eax]
and bl, cl
inc eax
or byte [esp + edx + 0xf0], bl
inc edx
jne 0x6b645c10
mov edx, esi
lea ecx, [esi + 0x7ffffff6]
lea edx, [esi - 0xb]
and edx, ecx
sar edx, 0x1f
movzx ecx, dl
mov edx, 0xffffff40
nop
nop
nop
nop
movzx ebx, byte [eax]
and bl, cl
inc eax
or byte [esp + edx + 0xf0], bl
inc edx
jne 0x6b645c40
mov edx, esi
lea ecx, [esi + 0x7ffffff5]
lea edx, [esi - 0xc]
and edx, ecx
sar edx, 0x1f
movzx ecx, dl
mov edx, 0xffffff40
nop
nop
nop
nop
movzx ebx, byte [eax]
and bl, cl
inc eax
or byte [esp + edx + 0xf0], bl
inc edx
jne 0x6b645c70
mov edx, esi
lea ecx, [esi + 0x7ffffff4]
lea edx, [esi - 0xd]
and edx, ecx
sar edx, 0x1f
movzx ecx, dl
mov edx, 0xffffff40
nop
nop
nop
nop
movzx ebx, byte [eax]
and bl, cl
inc eax
or byte [esp + edx + 0xf0], bl
inc edx
jne 0x6b645ca0
mov edx, esi
lea ecx, [esi + 0x7ffffff3]
lea edx, [esi - 0xe]
and edx, ecx
sar edx, 0x1f
movzx ecx, dl
mov edx, 0xffffff40
nop
nop
nop
nop
movzx ebx, byte [eax]
and bl, cl
inc eax
or byte [esp + edx + 0xf0], bl
inc edx
jne 0x6b645cd0
mov edx, esi
lea ecx, [esi + 0x7ffffff2]
lea edx, [esi - 0xf]
and edx, ecx
sar edx, 0x1f
movzx ecx, dl
mov edx, 0xffffff40
nop
nop
nop
nop
movzx ebx, byte [eax]
and bl, cl
inc eax
or byte [esp + edx + 0xf0], bl
inc edx
jne 0x6b645d00
mov ecx, esi
add ecx, 0x7ffffff1
sar ecx, 0x1f
movzx ecx, cl
mov edx, 0xffffff40
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ebx, byte [eax]
and bl, cl
inc eax
or byte [esp + edx + 0xf0], bl
inc edx
jne 0x6b645d30
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x34]
mov edi, eax
xor edi, ecx
mov esi, dword [esp + 0x2c]
and edi, esi
xor ecx, edi
mov dword [esp + 0x30], ecx
xor edi, eax
mov dword [esp + 0x70], edi
mov eax, dword [esp + 0x74]
mov ecx, eax
xor ecx, edx
and ecx, esi
xor edx, ecx
mov dword [esp + 0x34], edx
xor ecx, eax
mov dword [esp + 0x74], ecx
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x78]
mov edx, ecx
xor edx, eax
and edx, esi
xor eax, edx
mov dword [esp + 0x38], eax
xor edx, ecx
mov dword [esp + 0x78], edx
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x7c]
mov edx, ecx
xor edx, eax
and edx, esi
xor eax, edx
mov dword [esp + 0x3c], eax
xor edx, ecx
mov dword [esp + 0x7c], edx
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x80]
mov edx, ecx
xor edx, eax
and edx, esi
xor eax, edx
mov dword [esp + 0x40], eax
xor edx, ecx
mov dword [esp + 0x80], edx
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x84]
mov edx, ecx
xor edx, eax
and edx, esi
xor eax, edx
mov dword [esp + 0x44], eax
xor edx, ecx
mov dword [esp + 0x84], edx
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x88]
mov edx, ecx
xor edx, eax
and edx, esi
xor eax, edx
mov dword [esp + 0x48], eax
xor edx, ecx
mov dword [esp + 0x88], edx
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x8c]
mov edx, ecx
xor edx, eax
and edx, esi
xor eax, edx
mov dword [esp + 0x4c], eax
xor edx, ecx
mov dword [esp + 0x8c], edx
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x90]
mov edx, ecx
xor edx, eax
and edx, esi
xor eax, edx
mov dword [esp + 0x50], eax
xor edx, ecx
mov dword [esp + 0x90], edx
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x94]
mov edx, ecx
xor edx, eax
and edx, esi
xor eax, edx
mov dword [esp + 0x54], eax
xor edx, ecx
mov dword [esp + 0x94], edx
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x98]
mov edx, ecx
xor edx, eax
and edx, esi
xor eax, edx
mov dword [esp + 0x58], eax
xor edx, ecx
mov dword [esp + 0x98], edx
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x9c]
mov edx, ecx
xor edx, eax
and edx, esi
xor eax, edx
mov dword [esp + 0x5c], eax
xor edx, ecx
mov dword [esp + 0x9c], edx
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0xa0]
mov edx, ecx
xor edx, eax
and edx, esi
xor eax, edx
mov dword [esp + 0x60], eax
xor edx, ecx
mov dword [esp + 0xa0], edx
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0xa4]
mov edx, ecx
xor edx, eax
and edx, esi
xor eax, edx
mov dword [esp + 0x64], eax
xor edx, ecx
mov dword [esp + 0xa4], edx
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0xa8]
mov edx, ecx
xor edx, eax
and edx, esi
xor eax, edx
mov dword [esp + 0x68], eax
xor edx, ecx
mov dword [esp + 0xa8], edx
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0xac]
mov edx, ecx
xor edx, eax
and edx, esi
xor eax, edx
mov dword [esp + 0x6c], eax
xor edx, ecx
mov dword [esp + 0xac], edx
lea ecx, [esp + 0xb0]
mov edx, esi
call fcn.6b646af0
mov eax, dword [esp + 8]
cmp eax, 0x12
mov ebx, dword [esp + 0x14]
jne 0x6b645940
test ebx, ebx
jne 0x6b645940
lea ebx, [esp + 0x30]
push ebx
lea esi, [esp + 0x74]
push esi
mov edi, dword [esp + 0x30]
push edi
call fcn.6b64ac60
add esp, 0xc
push ebx
mov ebx, dword [esp + 0x18]
push esi
mov esi, dword [ebp + 8]
push esi
call fcn.6b64b040
add esp, 0xc
push esi
push edi
push dword [esp + 0x2c]
call fcn.6b6cee50
add esp, 0xc
mov ecx, 0x10
mov edi, dword [esp + 0x20]
mov esi, 0x6b7b2350
rep movsd dword es:[edi], dword [esi]
jmp 0x6b645961
push 0xc0
lea eax, [esp + 0x34]
push eax
call fcn.6b58f580
add esp, 8
push 0x38
lea eax, [esp + 0xf8]
push eax
call fcn.6b58f580
add esp, 8
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret