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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x88
mov esi, dword [edx + 0x1c]
movzx eax, word [edx + 0x38]
mov ebp, dword [edx + 0x18]
mov dword [esp + 0x28], ecx
mov ebx, edx
mov ecx, esi
mov word [esp + 0xe], ax
call fcn.004dee95
mov edi, eax
lea eax, [esi*4]
mov dword [esp], edx
push eax
push ebp
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [esp]
lea ecx, [esp + 0x30]
mov dword [ecx], edi
mov dword [ecx + 4], eax
mov dword [ecx + 8], esi
call fcn.004ded62
mov esi, dword [ebx + 0x28]
mov edi, dword [ebx + 0x20]
mov dword [esp + 0x24], eax
mov dword [esp + 0x20], edx
mov dword [esp + 8], ebx
mov ecx, esi
call fcn.004a4a30
imul ecx, esi, 0x34
mov dword [esp + 0x1c], esi
add edi, 0x20
xor ebp, ebp
mov esi, edx
mov dword [esp + 0x10], eax
mov dword [esp + 0x18], edx
mov dword [esp + 4], ecx
sub esi, 1
jb 0x5baf66
cmp dword [esp + 4], ebp
je 0x5baf66
movzx eax, word [edi + 0x10]
cmp dword [edi], 0
lea ebx, [esp + 0x30]
mov word [esp], ax
je 0x5bae8c
mov ecx, ebx
mov edx, edi
call fcn.0043d00e
jmp 0x5bae98
mov al, byte [edi + 4]
mov byte [esp + 0x34], al
and dword [esp + 0x30], 0
movsd xmm0, qword [esp + 0x30]
movsd xmm1, qword [esp + 0x38]
lea edx, [edi - 0x14]
mov ecx, ebx
movsd qword [esp + 0x80], xmm1
movsd qword [esp + 0x78], xmm0
call fcn.005b2163
cmp dword [edi - 0x20], 0
je 0x5baece
mov eax, dword [edi - 0x1c]
mov ecx, dword [edi - 0x18]
xor edx, edx
inc edx
jmp 0x5baed0
xor edx, edx
mov ebx, dword [esp + 0x40]
movsd xmm0, qword [esp + 0x78]
movsd xmm1, qword [esp + 0x80]
add edi, 0x34
mov dword [esp + 0x64], ebx
movsd qword [esp + 0x70], xmm1
movsd qword [esp + 0x68], xmm0
movsd xmm0, qword [esp + 0x30]
movsd xmm1, qword [esp + 0x38]
mov ebx, dword [esp + 0x10]
movsd qword [esp + 0x5c], xmm1
movsd qword [esp + 0x54], xmm0
mov dword [ebx + ebp], edx
mov dword [ebx + ebp + 4], eax
mov dword [ebx + ebp + 8], ecx
movsd xmm0, qword [esp + 0x54]
movsd xmm1, qword [esp + 0x5c]
movsd qword [ebx + ebp + 0xc], xmm0
movsd qword [ebx + ebp + 0x14], xmm1
mov eax, dword [esp + 0x64]
mov dword [ebx + ebp + 0x1c], eax
movzx eax, word [esp]
movsd xmm0, qword [esp + 0x68]
movsd xmm1, qword [esp + 0x70]
movsd qword [ebx + ebp + 0x20], xmm0
movsd qword [ebx + ebp + 0x28], xmm1
mov word [ebx + ebp + 0x30], ax
add ebp, 0x34
jmp 0x5bae5d
mov eax, dword [esp + 8]
mov edi, dword [eax + 0x34]
mov ebp, dword [eax + 0x2c]
test edi, edi
je 0x5bafb1
xor ebx, ebx
cmp edi, 0x38e38e4
setb al
jae 0x5bb0af
imul esi, edi, 0x24
test esi, esi
js 0x5bb0af
mov bl, al
mov edx, esi
shl ebx, 2
mov ecx, ebx
call fcn.0043bd7b
test eax, eax
mov dword [esp + 4], eax
jne 0x5bafb8
mov ecx, ebx
mov edx, esi
call fcn.0063c970
ud2
push 4
pop eax
mov dword [esp + 4], eax
imul eax, edi, 0x24
mov esi, edi
xor edi, edi
mov dword [esp + 0x2c], eax
mov dword [esp + 0x14], esi
sub esi, 1
jb 0x5bb01f
cmp dword [esp + 0x2c], edi
je 0x5bb01f
mov ecx, dword [esp + 4]
lea eax, [ebp + 0x24]
lea edx, [ebp + 0x10]
mov dword [esp], eax
lea ebx, [ecx + edi]
lea ecx, [esp + 0x40]
call fcn.005b2163
mov eax, dword [ebp]
mov ecx, dword [ebp + 4]
mov edx, dword [ebp + 8]
mov ebp, dword [ebp + 0xc]
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], ecx
mov dword [esp + 0x38], edx
mov dword [esp + 0x3c], ebp
push 0x24
lea eax, [esp + 0x34]
push eax
push ebx
call sub.VCRUNTIME140.dll_memmove
add esp, 0xc
mov ebp, dword [esp]
add edi, 0x24
jmp 0x5bafc7
mov eax, dword [esp + 8]
mov ecx, dword [eax]
xor eax, eax
test ecx, ecx
je 0x5bb035
cmp ecx, 1
jne 0x5bb039
xor ebp, ebp
inc ebp
jmp 0x5bb04f
xor ebp, ebp
jmp 0x5bb04f
mov ecx, dword [esp + 8]
mov edx, dword [ecx + 8]
mov edi, dword [ecx + 0x14]
mov esi, dword [ecx + 0x10]
mov dword [esp], edx
mov edx, dword [ecx + 0xc]
push 2
pop ebp
mov ebx, dword [esp + 0x28]
movzx ecx, word [esp + 0xe]
mov word [ebx + 0x38], cx
mov ecx, dword [esp + 0x24]
mov dword [ebx + 0x18], ecx
mov ecx, dword [esp + 0x20]
mov dword [ebx + 0x1c], ecx
mov ecx, dword [esp + 0x10]
mov dword [ebx + 0x20], ecx
mov ecx, dword [esp + 0x18]
mov dword [ebx + 0x24], ecx
mov ecx, dword [esp + 0x1c]
mov dword [ebx + 0x28], ecx
mov ecx, dword [esp + 4]
mov dword [ebx + 0x2c], ecx
mov ecx, dword [esp + 0x14]
mov dword [ebx + 0x30], ecx
mov dword [ebx + 0x34], ecx
mov ecx, dword [esp]
mov dword [ebx], ebp
mov dword [ebx + 4], eax
mov dword [ebx + 0xc], edx
mov dword [ebx + 8], ecx
mov dword [ebx + 0x10], esi
mov dword [ebx + 0x14], edi
add esp, 0x88
pop esi
pop edi
pop ebx
pop ebp
ret
call fcn.0043aad0
ud2