Function at 0x73c1d0
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x28
mov eax, dword [ebp + 8]
mov dword [ebp - 0x1c], esp
mov dword [ebp - 0x10], 0xffffffff
lea esi, [ebp - 0x18]
mov dword [ebp - 0x14], 0x73d480
mov edx, dword fs:[0]
mov dword [ebp - 0x18], edx
mov dword fs:[0], esi
mov dword [ecx], eax
mov dword [ebp - 0x2c], ecx
mov dword [ecx + 4], 0
mov dword [ebp - 0x10], 0
push 0x38
call fcn.0091d7fd
add esp, 4
nop
mov ecx, dword [ebp + 0x10]
mov edx, dword [ebp - 0x2c]
mov dword [edx + 4], eax
mov dword [eax + 0x10], 0x9d8060
mov dword [eax + 0x28], 0
mov dword [ebp - 0x20], eax
mov dword [eax + 0x2c], 0
mov eax, dword [ecx + 0x18]
mov dword [ebp - 0x30], eax
cmp dword [ecx + 0x1c], 0x10
jb 0x73c251
mov edx, dword [ecx + 8]
jmp 0x73c254
lea edx, [ecx + 8]
mov ecx, dword [ebp - 0x30]
cmp ecx, 0xf
ja 0x73c2d9
nop
movzx eax, byte [edx]
mov ecx, dword [ebp - 0x20]
mov byte [ecx + 0x18], al
movzx eax, byte [edx + 1]
mov byte [ecx + 0x19], al
movzx eax, byte [edx + 2]
mov byte [ecx + 0x1a], al
movzx eax, byte [edx + 3]
mov byte [ecx + 0x1b], al
movzx eax, byte [edx + 4]
mov byte [ecx + 0x1c], al
movzx eax, byte [edx + 5]
mov byte [ecx + 0x1d], al
movzx eax, byte [edx + 6]
mov byte [ecx + 0x1e], al
movzx eax, byte [edx + 7]
mov byte [ecx + 0x1f], al
movzx eax, byte [edx + 8]
mov byte [ecx + 0x20], al
movzx eax, byte [edx + 9]
mov byte [ecx + 0x21], al
movzx eax, byte [edx + 0xa]
mov byte [ecx + 0x22], al
movzx eax, byte [edx + 0xb]
mov byte [ecx + 0x23], al
movzx eax, byte [edx + 0xc]
mov byte [ecx + 0x24], al
movzx eax, byte [edx + 0xd]
mov byte [ecx + 0x25], al
movzx eax, byte [edx + 0xe]
mov byte [ecx + 0x26], al
movzx eax, byte [edx + 0xf]
mov byte [ecx + 0x27], al
mov edx, 0xf
jmp 0x73c420
mov dword [ebp - 0x28], edx
mov eax, ecx
or eax, 0xf
test ecx, ecx
mov ecx, 0x7fffffff
cmovns ecx, eax
cmp ecx, 0xfff
mov dword [ebp - 0x24], ecx
jb 0x73c316
lea eax, [ecx + 0x24]
mov dword [ebp - 0x10], 1
push eax
call fcn.0091d7fd
add esp, 4
mov ecx, eax
add eax, 0x23
and eax, 0xffffffe0
mov dword [eax - 4], ecx
jmp 0x73c329
lea eax, [ecx + 1]
mov dword [ebp - 0x10], 1
push eax
call fcn.0091d7fd
add esp, 4
mov ecx, dword [ebp - 0x20]
mov dword [ecx + 0x18], eax
mov ecx, dword [ebp - 0x30]
cmp ecx, 0xffffffff
je 0x73c41a
inc ecx
xor edx, edx
cmp ecx, 8
jb 0x73c3b6
mov esi, eax
sub esi, dword [ebp - 0x28]
cmp esi, 0x20
jb 0x73c3b6
xor edx, edx
cmp ecx, 0x20
jb 0x73c387
mov edx, ecx
and edx, 0xffffffe0
xor esi, esi
mov edi, dword [ebp - 0x28]
nop
nop
movups xmm0, xmmword [edi + esi]
movups xmm1, xmmword [edi + esi + 0x10]
movups xmmword [eax + esi], xmm0
movups xmmword [eax + esi + 0x10], xmm1
add esi, 0x20
cmp edx, esi
jne 0x73c360
cmp ecx, edx
je 0x73c41a
test cl, 0x18
je 0x73c3b6
mov esi, edx
mov edx, ecx
and edx, 0xfffffff8
mov edi, dword [ebp - 0x28]
nop word cs:[eax + eax]
nop
movsd xmm0, qword [edi + esi]
movsd qword [eax + esi], xmm0
add esi, 8
cmp edx, esi
jne 0x73c3a0
cmp ecx, edx
je 0x73c41a
mov esi, dword [ebp - 0x30]
sub esi, edx
mov dword [ebp - 0x34], esi
mov edi, ecx
and edi, 3
je 0x73c3dc
mov esi, dword [ebp - 0x28]
nop dword [eax + eax]
nop
movzx ebx, byte [esi + edx]
mov byte [eax + edx], bl
inc edx
dec edi
jne 0x73c3d0
cmp dword [ebp - 0x34], 3
jb 0x73c41a
mov esi, dword [ebp - 0x28]
nop word cs:[eax + eax]
nop
movzx ebx, byte [esi + edx]
mov byte [eax + edx], bl
movzx ebx, byte [esi + edx + 1]
mov byte [eax + edx + 1], bl
movzx ebx, byte [esi + edx + 2]
mov byte [eax + edx + 2], bl
movzx ebx, byte [esi + edx + 3]
mov byte [eax + edx + 3], bl
add edx, 4
cmp ecx, edx
jne 0x73c3f0
mov ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0x24]
nop
mov eax, dword [ebp - 0x30]
mov dword [ecx + 0x28], eax
mov dword [ecx + 0x2c], edx
mov dword [ecx + 0x14], 0x954b60
mov eax, dword [ebp + 0x10]
movsd xmm0, qword [eax + 0x20]
mov edx, dword [ebp + 0xc]
movsd qword [ecx + 0x30], xmm0
mov eax, dword [ebp - 0x2c]
mov ecx, dword [eax + 4]
mov dword [ecx], edx
mov ecx, dword [eax + 4]
mov dword [ecx + 4], edx
mov ecx, dword [eax + 4]
mov dword [ecx + 8], edx
mov ecx, dword [eax + 4]
mov byte [ecx + 0xc], 0
mov ecx, dword [eax + 4]
mov byte [ecx + 0xd], 0
mov ecx, dword [ebp - 0x18]
mov dword fs:[0], ecx
add esp, 0x28
pop esi
pop edi
pop ebx
pop ebp
ret 0xc