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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x340
mov esi, dword [ebp + 0xc]
mov eax, dword [ebp + 8]
push 0
call dword [eax]
add esp, 4
mov edi, eax
test eax, eax
je 0x45275a
lea ebx, [esp + 0x200]
push 0x138
push esi
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [edi]
mov dword [esp + 0x6c], edi
test eax, eax
mov dword [esp + 0x80], eax
je 0x452766
lea esi, [esp + 0xc8]
push esi
call fcn.0045a5ff
pop eax
movsd xmm0, qword [esi]
movsd xmm1, qword [esi + 8]
lea edi, [esp + 0xa8]
movsd qword [edi + 8], xmm1
movsd qword [edi], xmm0
jmp 0x45276c
mov ecx, esi
call fcn.0045416b
jmp 0x4530ba
or dword [edi], 0xffffffff
add edi, 4
lea eax, [edi + 0xc]
lea esi, [edi + 4]
mov dword [esp + 0x84], eax
lea eax, [esp + 0xc8]
push 0x138
push ebx
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
lea eax, [esp + 0xb8]
mov dword [eax], esi
mov dword [eax + 4], esi
and dword [eax + 8], 0
lea eax, [esp + 0xb8]
push eax
lea eax, [esp + 0xcc]
push eax
call fcn.00454d49
pop ecx
pop edx
mov ebx, eax
push 0
push 0
push 0
push edi
call fcn.0046b351
add esp, 0x10
test bl, bl
je 0x452fbd
mov ebx, dword [0x49c1fc]
test al, al
je 0x452856
mov eax, dword [ebx]
test eax, eax
je 0x452a85
call fcn.0045a6ba
push eax
lea eax, [esp + 0xc]
push eax
call fcn.0045a709
pop eax
pop ecx
cmp byte [esp + 0x10], 2
je 0x45279f
mov eax, dword [esp + 0x10]
movsd xmm0, qword [esp + 8]
mov dword [esp + 0x28], eax
mov eax, 0x48d468
movsd qword [esp + 0x20], xmm0
push eax
call fcn.00450e52
pop eax
push 0
push 0
push 0
lea ebx, [esp + 0x2c]
push ebx
lea esi, [esp + 0x98]
push esi
call fcn.0045ac24
add esp, 0x14
mov ecx, esi
call fcn.0044f086
mov eax, 0x48d468
push eax
call fcn.00450e34
pop eax
mov ecx, ebx
call fcn.00403efb
jmp 0x45279f
call fcn.0045a6ba
push eax
lea eax, [esp + 0xa0]
push eax
call fcn.0045a709
pop eax
pop ecx
cmp byte [esp + 0xa4], 2
jne 0x45288b
mov eax, dword [ebx]
test eax, eax
je 0x452b7e
push edi
call fcn.0046b334
pop eax
jmp 0x45279f
mov eax, dword [esp + 0xa4]
movsd xmm0, qword [esp + 0x9c]
mov dword [esp + 0x78], eax
movsd qword [esp + 0x70], xmm0
call fcn.0042cb80
mov dword [esp + 0x4c], edx
mov dword [esp + 0x48], eax
mov dword [esp + 0x50], ecx
push 0x48d468
call fcn.00450e52
pop eax
mov eax, dword [edi + 0xc]
mov cl, 1
xchg byte [eax + 8], cl
mov eax, dword [esp + 0x84]
mov dword [esp + 0x5c], eax
push 0
push 0
push 0
push edi
call fcn.0046b351
add esp, 0x10
mov ecx, dword [ebx]
test al, al
jne 0x452c77
test ecx, ecx
je 0x452986
sub esp, 0x14
lea eax, [esp + 0x84]
lea esi, [esp + 0x34]
mov dword [esp + 0x10], 0x3b9aca00
mov dword [esp + 4], eax
mov dword [esp], esi
call fcn.0045ac24
add esp, 0x14
mov ecx, esi
call fcn.0044f086
push 0
push 0
push 0
push edi
call fcn.0046b351
add esp, 0x10
test al, al
jne 0x452d6f
lea eax, [esp + 0x48]
push eax
call fcn.0042cf80
add esp, 4
and dword [esp + 0x24], 0
and dword [esp + 0x20], 0
mov dword [esp + 0xc], edx
mov dword [esp + 8], eax
mov dword [esp + 0x10], ecx
lea ecx, [esp + 8]
mov edx, esi
mov dword [esp + 0x28], 0x7a120
call fcn.00453dd1
test al, al
jne 0x452e86
lea eax, [esp + 0x5c]
push eax
call fcn.004548ef
pop eax
jmp 0x4528b6
mov ecx, dword [0x49c11c]
call fcn.00401acd
test al, al
je 0x4528f5
movzx eax, al
push eax
mov eax, dword [0x49c11c]
push dword [eax]
call fcn.0045fa60
pop ecx
pop edx
test al, al
je 0x4528f5
mov eax, dword [0x49c11c]
mov eax, dword [eax]
mov ecx, dword [eax + 0x1c]
mov edx, dword [eax + 0x20]
mov ebx, dword [eax + 0x24]
mov esi, dword [eax + 0x28]
and dword [esp + 0x18], 0
add eax, 0x1c
mov dword [esp + 4], eax
mov dword [esp + 0x1c], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ebx
lea ebx, [esp + 0x20]
lea edx, [esp + 8]
mov dword [esp + 0x14], esi
mov ecx, ebx
call fcn.0045498b
lea esi, [esp + 0x88]
mov edx, ebx
mov ecx, esi
push 0x48d46c
call fcn.0045436b
pop eax
mov dword [esp + 0x20], 0x48d48c
mov dword [esp + 0x24], 1
and dword [esp + 0x30], 0
mov dword [esp + 0x28], 4
and dword [esp + 0x2c], 0
lea eax, [esp + 0x3c]
mov dword [esp + 0x3c], esi
mov dword [esp + 0x40], ebx
mov dword [esp + 0x44], 0x48d458
push eax
push dword [esp + 8]
mov ebx, dword [0x49c1fc]
lea eax, [esp + 0x68]
push eax
call fcn.0045b3ad
add esp, 0xc
mov eax, dword [esp + 0x68]
movsd xmm0, qword [esp + 0x60]
mov dword [esp + 0x10], eax
lea eax, [esp + 8]
movsd qword [esp + 8], xmm0
push eax
mov eax, dword [0x49c11c]
push dword [eax]
call fcn.0045fd95
pop eax
pop ecx
jmp 0x4528f5
mov ecx, dword [0x49c114]
call fcn.00401acd
test al, al
je 0x4527e3
movzx eax, al
push eax
mov eax, dword [0x49c114]
push dword [eax]
call fcn.0045fa60
pop ecx
pop edx
test al, al
je 0x4527e3
mov eax, dword [0x49c114]
mov eax, dword [eax]
mov ecx, dword [eax + 0x1c]
mov edx, dword [eax + 0x20]
mov esi, dword [eax + 0x24]
mov ebx, dword [eax + 0x28]
and dword [esp + 0x18], 0
add eax, 0x1c
mov dword [esp + 4], eax
mov dword [esp + 0x1c], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], esi
mov dword [esp + 0x14], ebx
lea ebx, [esp + 0x20]
lea edx, [esp + 8]
mov ecx, ebx
call fcn.0045498b
lea esi, [esp + 0x88]
mov edx, ebx
mov ecx, esi
push 0x48d528
call fcn.0045436b
pop eax
mov dword [esp + 0x20], 0x48d4e0
mov dword [esp + 0x24], 1
and dword [esp + 0x30], 0
mov dword [esp + 0x28], 4
and dword [esp + 0x2c], 0
lea eax, [esp + 0x48]
mov dword [esp + 0x48], esi
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x50], 0x48d458
push eax
push dword [esp + 8]
lea eax, [esp + 0x44]
push eax
call fcn.0045b3ad
add esp, 0xc
mov eax, dword [esp + 0x44]
movsd xmm0, qword [esp + 0x3c]
mov dword [esp + 0x10], eax
lea eax, [esp + 8]
movsd qword [esp + 8], xmm0
push eax
mov eax, dword [0x49c114]
push dword [eax]
call fcn.0045fd95
pop eax
pop ecx
jmp 0x4527e3
mov ecx, dword [0x49c128]
call fcn.00401acd
test al, al
je 0x45287f
movzx eax, al
push eax
mov eax, dword [0x49c128]
push dword [eax]
call fcn.0045fa60
pop ecx
pop edx
test al, al
je 0x45287f
mov eax, dword [0x49c128]
mov eax, dword [eax]
mov ecx, dword [eax + 0x1c]
mov edx, dword [eax + 0x20]
mov esi, dword [eax + 0x24]
mov ebx, dword [eax + 0x28]
and dword [esp + 0x18], 0
add eax, 0x1c
mov dword [esp + 4], eax
mov dword [esp + 0x1c], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], esi
mov dword [esp + 0x14], ebx
lea ebx, [esp + 0x20]
lea edx, [esp + 8]
mov ecx, ebx
call fcn.0045498b
lea esi, [esp + 0x88]
mov edx, ebx
mov ecx, esi
push 0x48d4f8
call fcn.0045436b
pop eax
mov dword [esp + 0x20], 0x48d520
mov dword [esp + 0x24], 1
and dword [esp + 0x30], 0
mov dword [esp + 0x28], 4
and dword [esp + 0x2c], 0
lea eax, [esp + 0x48]
mov dword [esp + 0x48], esi
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x50], 0x48d458
push eax
push dword [esp + 8]
lea eax, [esp + 0x44]
push eax
call fcn.0045b3ad
add esp, 0xc
mov eax, dword [esp + 0x44]
movsd xmm0, qword [esp + 0x3c]
mov dword [esp + 0x10], eax
lea eax, [esp + 8]
movsd qword [esp + 8], xmm0
push eax
mov eax, dword [0x49c128]
push dword [eax]
call fcn.0045fd95
pop eax
pop ecx
jmp 0x45287f
test ecx, ecx
jne 0x452e6d
mov ecx, dword [0x49c118]
call fcn.00401acd
test al, al
je 0x452e6d
movzx eax, al
push eax
mov eax, dword [0x49c118]
push dword [eax]
call fcn.0045fa60
pop ecx
pop edx
test al, al
je 0x452e6d
mov eax, dword [0x49c118]
mov eax, dword [eax]
mov ecx, dword [eax + 0x1c]
mov edx, dword [eax + 0x20]
mov esi, dword [eax + 0x24]
mov ebx, dword [eax + 0x28]
and dword [esp + 0x18], 0
add eax, 0x1c
mov dword [esp + 4], eax
mov dword [esp + 0x1c], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], esi
mov dword [esp + 0x14], ebx
lea ebx, [esp + 0x20]
lea edx, [esp + 8]
mov ecx, ebx
call fcn.0045498b
lea esi, [esp + 0x88]
mov edx, ebx
mov ecx, esi
push 0x48d4e8
call fcn.0045436b
pop eax
mov dword [esp + 0x20], 0x48d4e0
mov dword [esp + 0x24], 1
and dword [esp + 0x30], 0
mov dword [esp + 0x28], 4
and dword [esp + 0x2c], 0
lea eax, [esp + 0x3c]
mov dword [esp + 0x3c], esi
mov dword [esp + 0x40], ebx
mov dword [esp + 0x44], 0x48d458
push eax
push dword [esp + 8]
lea eax, [esp + 0x68]
push eax
call fcn.0045b3ad
add esp, 0xc
mov eax, dword [esp + 0x68]
movsd xmm0, qword [esp + 0x60]
mov dword [esp + 0x10], eax
lea eax, [esp + 8]
movsd qword [esp + 8], xmm0
push eax
mov eax, dword [0x49c118]
jmp 0x452e64
mov eax, dword [ebx]
test eax, eax
jne 0x452e6d
mov ecx, dword [0x49c120]
call fcn.00401acd
test al, al
je 0x452e6d
movzx eax, al
push eax
mov eax, dword [0x49c120]
push dword [eax]
call fcn.0045fa60
pop ecx
pop edx
test al, al
je 0x452e6d
mov eax, dword [0x49c120]
mov eax, dword [eax]
mov ecx, dword [eax + 0x1c]
mov edx, dword [eax + 0x20]
mov esi, dword [eax + 0x24]
mov ebx, dword [eax + 0x28]
and dword [esp + 0x18], 0
add eax, 0x1c
mov dword [esp + 4], eax
mov dword [esp + 0x1c], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], esi
mov dword [esp + 0x14], ebx
lea ebx, [esp + 0x20]
lea edx, [esp + 8]
mov ecx, ebx
call fcn.0045498b
lea esi, [esp + 0x88]
mov edx, ebx
mov ecx, esi
push 0x48d4c8
call fcn.0045436b
pop eax
mov dword [esp + 0x20], 0x48d4e0
mov dword [esp + 0x24], 1
and dword [esp + 0x30], 0
mov dword [esp + 0x28], 4
and dword [esp + 0x2c], 0
lea eax, [esp + 0x3c]
mov dword [esp + 0x3c], esi
mov dword [esp + 0x40], ebx
mov dword [esp + 0x44], 0x48d458
push eax
push dword [esp + 8]
lea eax, [esp + 0x68]
push eax
call fcn.0045b3ad
add esp, 0xc
mov eax, dword [esp + 0x68]
movsd xmm0, qword [esp + 0x60]
mov dword [esp + 0x10], eax
lea eax, [esp + 8]
movsd qword [esp + 8], xmm0
push eax
mov eax, dword [0x49c120]
push dword [eax]
call fcn.0045fd95
pop eax
pop ecx
lea eax, [esp + 0x5c]
push eax
call fcn.004548ef
pop eax
lea ecx, [esp + 0x70]
call fcn.00403efb
jmp 0x45279f
mov eax, dword [ebx]
test eax, eax
je 0x452ecc
mov eax, dword [esp + 0x78]
movsd xmm0, qword [esp + 0x70]
lea ecx, [esp + 0x20]
mov dword [esp + 0x28], eax
movsd qword [esp + 0x20], xmm0
call fcn.00403efb
call fcn.0045a5f3
push eax
call fcn.0046b3cd
pop ecx
push edi
call fcn.0046b334
pop eax
lea eax, [esp + 0x5c]
push eax
call fcn.004548ef
pop eax
jmp 0x45279f
mov ecx, dword [0x49c124]
call fcn.00401acd
test al, al
je 0x452e8c
movzx eax, al
push eax
mov eax, dword [0x49c124]
push dword [eax]
call fcn.0045fa60
pop ecx
pop edx
test al, al
je 0x452e8c
mov eax, dword [0x49c124]
mov eax, dword [eax]
mov ecx, dword [eax + 0x1c]
mov edx, dword [eax + 0x20]
mov esi, dword [eax + 0x24]
mov ebx, dword [eax + 0x28]
and dword [esp + 0x18], 0
add eax, 0x1c
mov dword [esp + 4], eax
mov dword [esp + 0x1c], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], esi
mov dword [esp + 0x14], ebx
lea ebx, [esp + 0x20]
lea edx, [esp + 8]
mov ecx, ebx
call fcn.0045498b
lea esi, [esp + 0x88]
mov edx, ebx
mov ecx, esi
push 0x48d494
call fcn.0045436b
pop eax
mov dword [esp + 0x20], 0x48d4c0
mov dword [esp + 0x24], 1
and dword [esp + 0x30], 0
mov dword [esp + 0x28], 4
and dword [esp + 0x2c], 0
lea eax, [esp + 0x3c]
mov dword [esp + 0x3c], esi
mov dword [esp + 0x40], ebx
mov dword [esp + 0x44], 0x48d458
push eax
push dword [esp + 8]
lea eax, [esp + 0x68]
push eax
call fcn.0045b3ad
add esp, 0xc
mov eax, dword [esp + 0x68]
movsd xmm0, qword [esp + 0x60]
mov dword [esp + 0x10], eax
lea eax, [esp + 8]
movsd qword [esp + 8], xmm0
push eax
mov eax, dword [0x49c124]
push dword [eax]
call fcn.0045fd95
pop eax
pop ecx
jmp 0x452e8c
mov eax, dword [0x49c1fc]
mov eax, dword [eax]
test eax, eax
je 0x452ff7
lea ecx, [esp + 0xc8]
call fcn.0045416b
cmp dword [esp + 0x80], 0
je 0x4530b4
lea ecx, [esp + 0xa8]
call fcn.00454044
mov edi, dword [esp + 0x6c]
jmp 0x4530ba
mov esi, dword [0x49c110]
mov ecx, esi
call fcn.00401acd
test al, al
je 0x452fc8
movzx eax, al
push eax
push dword [esi]
call fcn.0045fa60
pop ecx
pop edx
test al, al
je 0x452fc8
mov eax, dword [esi]
lea edx, [esp + 8]
mov ecx, dword [eax + 0x1c]
mov edi, dword [eax + 0x20]
mov ebx, dword [eax + 0x24]
mov esi, dword [eax + 0x28]
and dword [edx + 0x10], 0
mov dword [edx + 0x14], edi
mov dword [edx], ecx
mov dword [edx + 4], edi
lea edi, [esp + 0x20]
mov dword [edx + 8], ebx
mov dword [edx + 0xc], esi
lea ebx, [eax + 0x1c]
mov ecx, edi
call fcn.0045498b
lea esi, [esp + 0x88]
mov edx, edi
mov ecx, esi
push 0x48d440
call fcn.0045436b
pop eax
mov dword [edi], 0x48d450
mov dword [edi + 4], 1
and dword [edi + 0x10], 0
mov dword [edi + 8], 4
and dword [edi + 0xc], 0
lea eax, [esp + 0x48]
mov dword [esp + 0x48], esi
mov dword [esp + 0x4c], edi
mov dword [esp + 0x50], 0x48d458
push eax
push ebx
lea esi, [esp + 0x44]
push esi
call fcn.0045b3ad
add esp, 0xc
push esi
mov eax, dword [0x49c110]
push dword [eax]
call fcn.0045fd95
pop eax
pop ecx
jmp 0x452fc8
mov edi, dword [esp + 0x6c]
inc dword [edi]
xor ecx, ecx
test edi, edi
sete cl
call fcn.0045439b
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret