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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x5862a0
mov eax, dword fs:[0]
push eax
sub esp, 0x50
mov eax, dword [0x603320]
xor eax, esp
mov dword [esp + 0x48], eax
push ebx
push esi
push edi
mov eax, dword [0x603320]
xor eax, esp
push eax
lea eax, [esp + 0x60]
mov dword fs:[0], eax
mov ebx, ecx
mov edi, dword [ebp + 0xc]
xorps xmm0, xmm0
mov dword [esp + 0x34], 3
movq qword [esp + 0x28], xmm0
mov dword [esp + 0x30], 0
mov dword [esp + 0x68], 0
mov dword [esp + 0x54], 3
movq qword [esp + 0x48], xmm0
mov dword [esp + 0x50], 0
mov dword [esp + 0x44], 3
movq qword [esp + 0x38], xmm0
mov dword [esp + 0x40], 0
sub esp, 0x14
mov byte [esp + 0x7c], 2
movdqu xmm0, xmmword [edi + 0x78]
mov eax, esp
lea edx, [esp + 0x4c]
lea ecx, [ebx + 0x38]
movdqu xmmword [eax], xmm0
call fcn.00482bf0
movdqu xmm0, xmmword [edi]
mov eax, esp
lea edx, [esp + 0x5c]
lea ecx, [ebx + 0x38]
movdqu xmmword [eax], xmm0
call fcn.00482bf0
mov eax, dword [ebp + 8]
mov esi, 0x1606
movzx ecx, ax
mov eax, ecx
test ecx, ecx
cdq
mov dword [esp + 0x2c], eax
mov eax, 0x3e06
cmovns esi, eax
mov dword [esp + 0x30], edx
mov dword [esp + 0x38], esi
add esp, 0x10
mov byte [esp + 0x6c], 3
lea eax, [esp + 0x1c]
mov edx, 0x5b687c
lea ecx, [esp + 0x2c]
push eax
call fcn.004a6ed0
add esp, 8
mov byte [esp + 0x68], 2
lea ecx, [esp + 0x18]
call fcn.0040d480
mov eax, dword [ebp + 0xa]
mov esi, 0x1606
movzx ecx, ax
mov eax, ecx
test ecx, ecx
cdq
mov dword [esp + 0x18], eax
mov eax, 0x3e06
cmovns esi, eax
mov dword [esp + 0x1c], edx
mov dword [esp + 0x24], esi
push ecx
lea eax, [esp + 0x1c]
mov byte [esp + 0x6c], 4
push eax
mov edx, str.secondKey
lea ecx, [esp + 0x30]
call fcn.004a6ed0
add esp, 8
mov byte [esp + 0x68], 2
lea ecx, [esp + 0x18]
call fcn.0040d480
push ecx
lea eax, [esp + 0x4c]
mov edx, str.origin
push eax
lea ecx, [esp + 0x30]
call fcn.004a6ed0
add esp, 8
mov dword [esp + 0x24], 0
lea edx, [edi + 0x10]
mov byte [esp + 0x68], 5
cmp dword [edx + 0x14], 8
jb 0x48fdfb
mov edx, dword [edx]
push ecx
lea ecx, [esp + 0x1c]
call fcn.004a71d0
lea eax, [esp + 0x1c]
mov edx, str.macros
push eax
lea ecx, [esp + 0x30]
call fcn.004a6ed0
add esp, 8
mov byte [esp + 0x68], 2
lea ecx, [esp + 0x18]
call fcn.0040d480
lea edx, [edi + 0x28]
mov dword [esp + 0x24], 0
mov byte [esp + 0x68], 6
cmp dword [edx + 0x14], 8
jb 0x48fe41
mov edx, dword [edx]
push ecx
lea ecx, [esp + 0x1c]
call fcn.004a71d0
lea eax, [esp + 0x1c]
mov edx, str.description
push eax
lea ecx, [esp + 0x30]
call fcn.004a6ed0
add esp, 8
mov byte [esp + 0x68], 2
lea ecx, [esp + 0x18]
call fcn.0040d480
lea edx, [edi + 0x40]
mov dword [esp + 0x24], 0
mov byte [esp + 0x68], 7
cmp dword [edx + 0x14], 8
jb 0x48fe87
mov edx, dword [edx]
push ecx
lea ecx, [esp + 0x1c]
call fcn.004a71d0
lea eax, [esp + 0x1c]
mov edx, str.moreDescription
push eax
lea ecx, [esp + 0x30]
call fcn.004a6ed0
add esp, 8
mov byte [esp + 0x68], 2
lea ecx, [esp + 0x18]
call fcn.0040d480
lea edx, [edi + 0x58]
mov dword [esp + 0x24], 0
mov byte [esp + 0x68], 8
cmp dword [edx + 0x14], 8
jb 0x48fecd
mov edx, dword [edx]
push ecx
lea ecx, [esp + 0x1c]
call fcn.004a71d0
lea eax, [esp + 0x1c]
mov edx, str.extraData
push eax
lea ecx, [esp + 0x30]
call fcn.004a6ed0
add esp, 8
mov byte [esp + 0x68], 2
lea ecx, [esp + 0x18]
call fcn.0040d480
mov al, byte [edi + 0x70]
xor ecx, ecx
test al, al
setne cl
add ecx, 0x101
mov dword [esp + 0x24], ecx
push ecx
lea eax, [esp + 0x1c]
mov byte [esp + 0x6c], 9
push eax
mov edx, str.hintVisible
lea ecx, [esp + 0x30]
call fcn.004a6ed0
add esp, 8
mov byte [esp + 0x68], 2
lea ecx, [esp + 0x18]
call fcn.0040d480
push ecx
lea eax, [esp + 0x3c]
mov edx, str.hintOffset
push eax
lea ecx, [esp + 0x30]
call fcn.004a6ed0
cmp dword [0x60355c], 0x10
mov ecx, 0x603548
cmovae ecx, dword [0x603548]
sub esp, 8
mov edx, esp
mov eax, ecx
cmp byte [ecx], 0
je 0x48ff76
lea esp, [esp]
inc eax
cmp byte [eax], 0
jne 0x48ff70
sub eax, ecx
mov dword [edx], ecx
mov dword [edx + 0xc], 0x100005
lea ecx, [ebx + 0x50]
mov dword [edx + 4], eax
lea edx, [esp + 0x38]
call fcn.0048ce00
add esp, 0x10
mov byte [esp + 0x68], 1
lea ecx, [esp + 0x38]
call fcn.0040d480
lea ecx, [esp + 0x48]
mov byte [esp + 0x68], 0
call fcn.0040d480
lea ecx, [esp + 0x28]
mov dword [esp + 0x68], 0xffffffff
call fcn.0040d480
mov ecx, dword [esp + 0x60]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x48]
xor ecx, esp
call fcn.00576f50
mov esp, ebp
pop ebp
ret 8