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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x258
mov ebp, dword [esp + 0x26c]
mov dword [esp + 4], edx
mov ebx, ecx
call 0x462b9c
pop ecx
movsd xmm2, qword [ebp + 0x60]
movsd xmm1, qword [ebp + 0x58]
mov edx, dword [ebp + 0x14]
mov eax, dword [ebp + 0x68]
movd xmm0, dword [ebp + 0x24]
movsd qword [esp + 0x108], xmm2
movsd qword [esp + 0x100], xmm1
movsd xmm2, qword [ebp + 0x48]
movsd xmm1, qword [ebp + 0x50]
lea edi, [edx + edx]
mov dword [esp + 0x110], eax
movdqu xmmword [esp + 0x40], xmm0
mov dword [esp], edx
mov eax, edi
or eax, edx
movsd qword [esp + 0xf8], xmm1
movsd qword [esp + 0xf0], xmm2
js 0x463a3f
mov esi, dword [ebp + 0x10]
test edi, edi
mov dword [esp + 0x10], ecx
je 0x462c28
movzx eax, byte [0xfd520d]
xor ecx, ecx
mov edx, edi
call fcn.00494530
mov ecx, dword [esp]
test eax, eax
mov dword [esp + 0x30], ecx
jne 0x462c35
jmp 0x463a3f
mov eax, 1
mov dword [esp + 0x30], 0
push edi
push esi
mov dword [esp + 0x24], eax
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [esp + 4]
mov esi, dword [ebp + 4]
mov dword [esp + 0x50], ebx
movsd xmm1, qword [eax + 0x7c]
movq xmm0, qword [eax + 0x84]
movsd xmm2, qword [eax + 0x6c]
movsd qword [esp + 0x1ec], xmm1
movsd xmm1, qword [eax + 0x74]
mov eax, dword [ebp + 8]
movq qword [esp + 0x1f4], xmm0
movsd qword [esp + 0x1dc], xmm2
lea ebp, [esi + eax*4]
shl eax, 2
movsd qword [esp + 0x1e4], xmm1
nop word cs:[eax + eax]
nop dword [eax]
test eax, eax
je 0x462d50
movzx edi, word [esi]
add esi, 4
add eax, 0xfffffffc
cmp edi, 0xba
je 0x462ca0
movzx ebx, word [esi - 2]
movzx eax, byte [0xfd520d]
xor ecx, ecx
mov edx, 0x10
call fcn.00494530
test eax, eax
je 0x463a3f
mov word [eax], di
mov edi, 1
mov word [eax + 2], bx
mov dword [esp + 0x74], 4
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], 1
nop dword [eax + eax]
cmp esi, ebp
je 0x462d5b
movzx ebx, word [esi]
add esi, 4
cmp ebx, 0xba
je 0x462d00
movzx ecx, word [esi - 2]
cmp edi, dword [esp + 0x74]
je 0x462d2c
mov word [eax + edi*4], bx
mov word [eax + edi*4 + 2], cx
inc edi
mov dword [esp + 0x7c], edi
jmp 0x462d00
mov word [esp + 0xc], cx
lea ecx, [esp + 0x74]
mov edx, edi
push 4
push 2
push 1
call fcn.004e8d40
movzx ecx, word [esp + 0x18]
add esp, 0xc
mov eax, dword [esp + 0x78]
jmp 0x462d1c
mov eax, 2
xor edi, edi
xor ecx, ecx
jmp 0x462d63
mov ecx, dword [esp + 0x74]
mov eax, dword [esp + 0x78]
movdqu xmm0, xmmword [esp + 0x40]
movsd xmm1, qword [esp + 0x1e4]
movsd xmm3, qword [esp + 0x1dc]
movsd xmm2, qword [esp + 0x1ec]
mov edx, dword [esp + 0x110]
movd dword [esp + 0x98], xmm0
movsd qword [esp + 0xa4], xmm1
movsd xmm1, qword [esp + 0x1f4]
movsd qword [esp + 0x9c], xmm3
movsd qword [esp + 0xac], xmm2
movsd xmm3, qword [esp + 0xf0]
movsd xmm2, qword [esp + 0x100]
movsd qword [esp + 0xb4], xmm1
movsd xmm1, qword [esp + 0xf8]
mov dword [esp + 0xdc], edx
movsd qword [esp + 0xbc], xmm3
movsd qword [esp + 0xcc], xmm2
mov edx, dword [esp + 0x1c]
movsd qword [esp + 0xc4], xmm1
movsd xmm1, qword [esp + 0x108]
movsd qword [esp + 0xd4], xmm1
mov dword [esp + 0x74], ecx
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], edi
mov dword [esp + 0x80], ecx
mov ecx, dword [esp]
mov dword [esp + 0x84], edx
mov dword [esp + 0x88], ecx
lea ecx, [esp + 0x8c]
mov dword [esp + 0x8c], 0
mov dword [esp + 0x90], 4
mov dword [esp + 0x94], 0
call fcn.00449af0
mov esi, dword [esp + 0x90]
mov ecx, dword [esp + 4]
xor edi, edi
mov ebp, dword [esp + 0x26c]
mov dword [esi], 0x80000000
lea eax, [ecx + 0x40]
mov dword [esp + 0x94], 1
movzx edx, byte [ecx + 0x3c]
xor dl, 1
and dl, byte [ecx + 0x8c]
mov ecx, 0x24
cmovne edi, eax
mov byte [esp + 8], dl
mov dword [esp + 0x54], edi
mov edi, dword [ebp + 0x20]
mov eax, edi
mul ecx
jo 0x463a3f
mov ebx, eax
cmp eax, 0x7ffffffd
jae 0x463a3f
test ebx, ebx
je 0x462ee7
movzx eax, byte [0xfd520d]
xor ecx, ecx
mov edx, ebx
call fcn.00494530
test eax, eax
mov ecx, edi
jne 0x462eee
jmp 0x463a3f
mov eax, 4
xor ecx, ecx
test edi, edi
mov dword [esp + 0x64], ecx
mov dword [esp + 0x68], eax
mov dword [esp + 0x14], eax
mov dword [esp + 0x6c], 0
je 0x462f75
movzx eax, byte [0xfd520d]
lea edx, [edi*4]
xor ecx, ecx
call fcn.00494530
test eax, eax
je 0x463a3f
mov dword [esp + 0x58], edi
mov edi, dword [ebp + 0x1c]
mov dword [esp + 0x5c], eax
mov dword [esp + 0x30], eax
mov dword [esp + 0x60], 0
mov eax, 0x7fffffff
mov ecx, 0x11
mov edx, dword [esp + 0x10]
mov dword [esp + 0x40], 1
mov dword [esp + 0x1c], 0
mov dword [esp], 0
add eax, dword [edi]
lea ebp, [edi + 0x24]
cmp eax, 0x14
cmovb ecx, eax
mov eax, dword [ecx*4 + 0x463ebc]
add eax, edx
jmp eax
mov edi, dword [esp + 0x14]
mov dword [esp + 0x58], 0
mov dword [esp + 0x5c], 2
mov dword [esp + 0x60], 0
mov dword [esp], 0
mov edx, 1
mov ebx, 1
jmp 0x462fbe
lea eax, [ebx - 1]
lea ecx, [eax + eax*8]
cmp dword [esi + ecx*4], 0x8000000a
cmove ebx, eax
cmp edx, ebx
jae 0x462fe4
jmp 0x463a3f
mov ecx, dword [esp]
mov eax, edx
mov esi, dword [esp + 0x64]
mov dword [esp + 0x94], ebx
mov dword [esp + 0x40], ebx
mov dword [esp + 0x14], edi
sub eax, ebx
mov dword [esp + 0xc], eax
lea eax, [ecx + ecx*8]
mov dword [esp + 0x54], esi
lea eax, [edi + eax*4]
mov dword [esp + 0x30], eax
jne 0x4630b0
mov eax, dword [esp + 0x8c]
sub eax, edx
cmp ecx, eax
ja 0x46397c
test ecx, ecx
mov ebx, edi
mov ebp, edx
je 0x463096
mov eax, dword [esp + 0x90]
mov ebp, edx
mov dword [esp + 8], edx
lea ecx, [ebp + ebp*8]
xor edx, edx
lea eax, [eax + ecx*4]
mov ecx, dword [esp]
shl ecx, 2
lea ecx, [ecx + ecx*8]
nop
movq xmm0, qword [edi + edx]
movsd xmm1, qword [edi + edx + 8]
movsd xmm2, qword [edi + edx + 0x10]
movsd xmm3, qword [edi + edx + 0x18]
mov esi, dword [edi + edx + 0x20]
inc ebp
mov dword [eax + edx + 0x20], esi
movsd qword [eax + edx + 0x18], xmm3
movsd qword [eax + edx + 0x10], xmm2
movsd qword [eax + edx + 8], xmm1
movq qword [eax + edx], xmm0
add edx, 0x24
cmp ecx, edx
jne 0x463050
mov ebx, dword [esp + 0x30]
mov edx, dword [esp + 8]
mov dword [esp + 0x94], ebp
mov ecx, edx
mov eax, dword [esp + 0x40]
cmp edx, eax
jne 0x4634aa
jmp 0x4634e4
test ecx, ecx
mov dword [esp + 8], edx
je 0x463262
mov eax, dword [esp + 0x8c]
sub eax, edx
cmp eax, ecx
jb 0x4639ed
mov eax, dword [esp + 0x40]
mov edi, dword [esp + 0x90]
mov ebp, eax
lea ebx, [ecx*4]
add ecx, eax
lea eax, [eax + eax*8]
mov dword [esp], ecx
lea eax, [edi + eax*4]
mov ecx, dword [esp]
lea ecx, [ecx + ecx*8]
lea esi, [edi + ecx*4]
mov ecx, dword [esp + 0xc]
lea ecx, [ecx*4]
lea ecx, [ecx + ecx*8]
push ecx
push eax
push esi
call sub.VCRUNTIME140.dll_memmove
mov ecx, dword [esp + 0xc]
add esp, 0xc
cmp ebp, ecx
jne 0x463289
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x40]
lea edx, [ebx + ebx*8]
cmp edx, 0x7ffffffd
jae 0x463a3f
mov ebx, dword [esp + 0x30]
cmp ebx, edi
je 0x463278
mov dword [esp + 0x20], edi
mov dword [esp], ecx
xor ecx, ecx
xor edi, edi
movzx eax, byte [0xfd520d]
call fcn.00494530
test eax, eax
mov dword [esp + 0x18], eax
je 0x463a3f
mov ebx, dword [esp + 0x20]
mov edx, dword [esp + 0x18]
mov eax, 0xffffffff
nop dword [eax]
mov esi, eax
movq xmm0, qword [ebx + edi]
movsd xmm1, qword [ebx + edi + 8]
movsd xmm2, qword [ebx + edi + 0x10]
movsd xmm3, qword [ebx + edi + 0x18]
mov eax, dword [ebx + edi + 0x20]
lea ecx, [ebx + edi + 0x24]
mov dword [edx + edi + 0x20], eax
movsd qword [edx + edi + 0x18], xmm3
movsd qword [edx + edi + 0x10], xmm2
movsd qword [edx + edi + 8], xmm1
movq qword [edx + edi], xmm0
add edi, 0x24
cmp ecx, dword [esp + 0x30]
lea eax, [esi + 1]
jne 0x463170
mov ebx, dword [esp]
mov ecx, dword [esp + 0xc]
add esi, 2
lea edx, [ebx + ecx]
mov ecx, dword [esp + 0x8c]
sub ecx, edx
cmp ecx, eax
jbe 0x463a1f
mov edx, dword [esp + 0x90]
mov eax, ebx
add ebx, esi
lea eax, [eax + eax*8]
lea ecx, [ebx + ebx*8]
lea eax, [edx + eax*4]
mov dword [esp], edx
lea edx, [edx + ecx*4]
mov ecx, dword [esp + 0xc]
lea ecx, [ecx*4]
lea ecx, [ecx + ecx*8]
push ecx
push eax
mov dword [esp + 0xe8], edx
push edx
call sub.VCRUNTIME140.dll_memmove
add esp, 0xc
cmp ebp, ebx
mov dword [esp + 0x70], ebx
jne 0x463368
mov ecx, dword [esp + 0x18]
mov ebx, ecx
lea eax, [esi + esi*8]
lea eax, [ecx + eax*4]
cmp eax, ebx
je 0x463449
mov eax, ecx
mov ecx, 0x38e38e39
mov esi, dword [esp + 0x20]
sub eax, ebx
add eax, edi
mul ecx
mov edi, edx
shr edi, 3
nop word cs:[eax + eax]
mov ecx, ebx
call fcn.00444ee0
add ebx, 0x24
dec edi
jne 0x463250
jmp 0x46347b
mov eax, dword [esp + 0x40]
xor edx, edx
mov ecx, eax
mov ebp, eax
mov ebx, dword [esp + 0x30]
cmp ebx, edi
jne 0x46313d
mov edx, dword [esp + 8]
cmp edx, eax
jne 0x4634aa
jmp 0x4634e4
lea ecx, [ebx + ebx*8]
mov ebx, dword [esp + 0x14]
lea eax, [ebp + ebp*8]
lea eax, [edi + eax*4]
nop word [eax + eax]
test ecx, ecx
je 0x46345b
mov edx, dword [ebx]
cmp edx, 0x80000015
je 0x463461
movsd xmm0, qword [ebx + 0x1c]
lea edi, [ebx + 0x24]
add ecx, 0xffffffdc
movsd qword [esp + 0x108], xmm0
movsd xmm0, qword [ebx + 0x14]
movsd qword [esp + 0x100], xmm0
movsd xmm0, qword [ebx + 4]
movsd xmm1, qword [ebx + 0xc]
mov ebx, edi
movsd qword [esp + 0xf8], xmm1
movsd qword [esp + 0xf0], xmm0
mov dword [eax], edx
movsd xmm0, qword [esp + 0xf0]
movsd xmm1, qword [esp + 0xf8]
movsd qword [eax + 4], xmm0
movsd qword [eax + 0xc], xmm1
movsd xmm0, qword [esp + 0x100]
movsd qword [eax + 0x14], xmm0
movq xmm0, qword [esp + 0x108]
movq qword [eax + 0x1c], xmm0
add eax, 0x24
mov ebp, dword [esp + 0x94]
inc ebp
cmp eax, esi
mov dword [esp + 0x94], ebp
jne 0x4632a0
mov edx, dword [esp + 0x30]
mov ecx, dword [esp]
mov eax, dword [esp + 0x40]
sub edx, edi
cmp edx, 0x7ffffffd
jb 0x463131
jmp 0x463a3f
mov ecx, dword [esp]
mov edx, dword [esp + 0x18]
lea eax, [ebp + ebp*8]
lea eax, [ecx + eax*4]
lea ecx, [edx + 0x24]
mov dword [esp], ecx
mov ecx, edi
nop
mov ebx, dword [esp]
test ecx, ecx
je 0x463470
mov dword [esp + 0x1c], ecx
mov ecx, dword [edx]
cmp ecx, 0x80000015
je 0x463430
movsd xmm0, qword [edx + 0x1c]
inc ebp
movsd qword [esp + 0x108], xmm0
movsd xmm0, qword [edx + 0x14]
movsd qword [esp + 0x100], xmm0
movsd xmm0, qword [edx + 4]
movsd xmm1, qword [edx + 0xc]
add edx, 0x24
movsd qword [esp + 0xf8], xmm1
movsd qword [esp + 0xf0], xmm0
mov dword [eax], ecx
lea ecx, [ebx + 0x24]
movsd xmm0, qword [esp + 0xf0]
movsd xmm1, qword [esp + 0xf8]
mov dword [esp], ecx
mov ecx, dword [esp + 0x1c]
movsd qword [eax + 4], xmm0
movsd qword [eax + 0xc], xmm1
add ecx, 0xffffffdc
movsd xmm0, qword [esp + 0x100]
movsd qword [eax + 0x14], xmm0
movq xmm0, qword [esp + 0x108]
movq qword [eax + 0x1c], xmm0
add eax, 0x24
cmp eax, dword [esp + 0xe0]
jne 0x463380
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x94], ebp
lea eax, [esi + esi*8]
lea eax, [ecx + eax*4]
cmp eax, ebx
jne 0x463230
mov esi, dword [esp + 0x20]
mov ebx, dword [esp + 0x30]
mov eax, dword [esp + 0x40]
cmp esi, ebx
jne 0x46348b
jmp 0x46349e
mov ebx, dword [esp + 0x30]
jmp 0x463464
add ebx, 0x24
mov ecx, dword [esp]
mov edx, dword [esp + 8]
jmp 0x46309f
mov esi, dword [esp + 0x20]
mov dword [esp + 0x94], ebp
mov ecx, dword [esp + 0x18]
mov ebx, dword [esp + 0x30]
mov eax, dword [esp + 0x40]
cmp esi, ebx
je 0x46349e
push ecx
push 0
push dword [0xfd5200]
mov esi, eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov eax, esi
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 8]
cmp edx, eax
je 0x4634e4
mov esi, dword [esp + 0xc]
cmp ecx, ebp
je 0x4634db
mov eax, dword [esp + 0x90]
lea ecx, [ecx + ecx*8]
lea edx, [ebp + ebp*8]
lea ecx, [eax + ecx*4]
lea eax, [eax + edx*4]
lea edx, [esi*4]
lea edx, [edx + edx*8]
push edx
push ecx
push eax
call sub.VCRUNTIME140.dll_memmove
add esp, 0xc
add ebp, esi
mov dword [esp + 0x94], ebp
mov esi, dword [esp + 0x30]
mov ecx, 0x38e38e39
mov eax, esi
sub eax, ebx
mul ecx
cmp esi, ebx
je 0x46350d
mov edi, edx
shr edi, 3
nop dword [eax]
mov ecx, ebx
call fcn.00444ee0
add ebx, 0x24
dec edi
jne 0x463500
cmp dword [esp + 0x54], 0
je 0x463526
push dword [esp + 0x14]
push 0
push dword [0xfd5200]
call dword [sym.imp.KERNEL32.dll_HeapFree]
test ebp, ebp
je 0x463580
mov edi, dword [esp + 0x90]
movzx eax, byte [0xfd520d]
lea edx, [ebp*4]
xor ecx, ecx
xor ebx, ebx
call fcn.00494530
test eax, eax
je 0x463a3f
mov esi, eax
add edi, 0x10
mov eax, 0x7fffffff
mov ecx, 0x11
mov edx, 0xb
add eax, dword [edi - 0x10]
movd xmm0, edx
mov edx, dword [esp + 0x10]
cmp eax, 0x14
cmovb ecx, eax
mov ecx, dword [ecx*4 + 0x463fe0]
add ecx, edx
jmp ecx
mov esi, 2
mov ebx, dword [esp + 4]
cmp dword [ebx + 0x1c], 0
je 0x4635a0
push dword [ebx + 0x20]
push 0
push dword [0xfd5200]
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov eax, dword [esp + 0x274]
mov dword [ebx + 0x1c], ebp
mov dword [ebx + 0x20], esi
mov dword [ebx + 0x24], ebp
mov edx, dword [eax + 8]
test edx, edx
je 0x463674
lea eax, [esp + 0xf0]
lea esi, [esp + 0x74]
mov ecx, 0x1b
mov edi, eax
rep movsd dword es:[edi], dword [esi]
mov byte [esp + 0x15c], 1
lea ecx, [esp + 0x1dc]
push eax
push dword [ebx + 8]
push dword [ebx + 4]
call fcn.004641f0
add esp, 0xc
mov edi, dword [ebx + 0x60]
lea esi, [ebx + 0x60]
test edi, edi
je 0x463628
mov eax, dword [esp + 4]
mov ebx, dword [eax + 0x64]
mov eax, dword [ebx]
test eax, eax
je 0x46360a
push edi
call eax
add esp, 4
cmp dword [ebx + 4], 0
je 0x463628
cmp dword [ebx + 8], 9
jb 0x463619
mov edi, dword [edi - 4]
push edi
push 0
push dword [0xfd5200]
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov eax, dword [esp + 0x1e4]
movq xmm0, qword [esp + 0x1dc]
mov dword [esi + 8], eax
mov eax, dword [esp + 0xf0]
movq qword [esi], xmm0
cmp eax, 0x80000016
setge cl
cmp eax, 0x80000001
sete al
or al, cl
je 0x463a3f
lea edi, [esp + 0x74]
lea esi, [esp + 0xf0]
mov ecx, 0x1b
rep movsd dword es:[edi], dword [esi]
mov ebx, dword [esp + 4]
lea eax, [esp + 0x58]
lea ecx, [esp + 0x74]
mov dword [esp + 0xf0], 0
mov dword [esp + 0xf4], 1
mov dword [esp + 0xf8], 0
lea edx, [esp + 0xf0]
push eax
call fcn.004462a0
add esp, 4
mov eax, dword [esp + 0xf8]
movzx edx, byte [ebx + 0x8e]
mov ecx, 0
movq xmm0, qword [esp + 0xf0]
mov dword [esp + 0x2c], eax
xor eax, eax
cmp dl, 1
movq qword [esp + 0x24], xmm0
sbb ecx, ecx
or cl, dl
cmp byte [ebx + 0x3c], 0
je 0x4636ea
movzx eax, cl
add eax, 9
jmp 0x4636f6
sub cl, byte [ebx + 0x48]
movzx ecx, cl
cmovb ecx, eax
movzx eax, cl
mov ebx, dword [esp + 0x2c]
mov edi, 1
lea ebp, [eax + ebx - 1]
and ebp, 0x1f
mov esi, ebp
xor esi, 0x1f
cmp ebp, 0x1f
je 0x463726
mov ecx, 8
mov edx, esi
call fcn.00494530
test eax, eax
je 0x463a3f
mov edi, eax
mov eax, dword [esp + 0x24]
sub eax, ebx
cmp eax, esi
jb 0x463960
mov eax, dword [esp + 0x28]
add eax, ebx
push esi
push edi
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add esi, ebx
cmp ebp, 0x1f
mov dword [esp + 0x2c], esi
je 0x46375f
push edi
push 0
push dword [0xfd5200]
call dword [sym.imp.KERNEL32.dll_HeapFree]
xor eax, eax
cmp dword [esp + 0x270], 0
lea ebx, [esp + 0xf0]
lea esi, [esp + 0x74]
mov ecx, 0x1b
mov edi, ebx
rep movsd dword es:[edi], dword [esi]
mov dword [esp + 0xe4], 0
mov dword [esp + 0xe8], 1
mov byte [esp + 0x15c], 1
mov dword [esp + 0xec], 0
setne al
lea ebp, [eax + eax + 2]
sub esp, 4
lea edx, [esp + 0xe8]
mov ecx, ebx
push 0x80000000
call fcn.004512d0
add esp, 8
mov eax, dword [esp + 0xec]
movsd xmm0, qword [esp + 0xe4]
lea edi, [esp + 0x1e8]
mov ecx, 0x1c
mov esi, ebx
mov dword [esp + 0x1e4], eax
movsd qword [esp + 0x1dc], xmm0
mov eax, 1
rep movsd dword es:[edi], dword [esi]
mov word [esp + 0x16c], bp
lea edi, [esp + 0xf0]
lea esi, [esp + 0x1dc]
mov ecx, 0x1f
rep movsd dword es:[edi], dword [esi]
mov ebx, dword [esp + 0xf0]
lea ecx, [ebx + 0x7fffffff]
cmp ecx, 5
cmovb eax, ecx
cmp eax, 2
je 0x4638ad
cmp eax, 1
jne 0x46390d
mov ecx, dword [esp + 4]
mov ebp, dword [esp + 0xf8]
mov edx, dword [esp + 0xf4]
mov eax, dword [ecx]
mov esi, dword [ecx + 8]
sub eax, esi
cmp eax, ebp
jb 0x4639a9
mov edi, dword [esp + 4]
mov dword [esp + 0x10], edx
mov eax, dword [edi + 4]
add eax, esi
push ebp
push edx
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
movsd xmm0, qword [esp + 0x24]
mov ecx, dword [esp + 0x50]
mov eax, dword [esp + 0x2c]
add esi, ebp
mov ebp, dword [esp + 0x10]
mov dword [edi + 8], esi
movsd qword [ecx], xmm0
mov dword [ecx + 8], eax
lea ecx, [esp + 0xfc]
call fcn.00451a10
test ebx, 0x7fffffff
je 0x463955
jmp 0x463946
mov ecx, dword [esp + 4]
mov ebx, dword [esp + 0xfc]
mov edx, dword [esp + 0xf8]
mov eax, dword [ecx]
mov esi, dword [ecx + 8]
sub eax, esi
cmp eax, ebx
jb 0x4639cc
mov edi, dword [esp + 4]
mov eax, dword [edi + 4]
add eax, esi
push ebx
push edx
push eax
mov ebp, edx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add esi, ebx
test dword [esp + 0xf4], 0x7fffffff
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x50]
movsd xmm0, qword [esp + 0x24]
mov dword [edi + 8], esi
mov dword [ecx + 8], eax
movsd qword [ecx], xmm0
je 0x463955
jmp 0x463946
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x50]
movsd xmm0, qword [esp + 0x24]
cmp ebx, 0x80000001
mov dword [ecx + 8], eax
movsd qword [ecx], xmm0
je 0x463955
cmp ebx, 0x80000004
je 0x463955
test dword [esp + 0xf4], 0x7fffffff
je 0x463955
mov ebp, dword [esp + 0xf8]
push ebp
push 0
push dword [0xfd5200]
call dword [sym.imp.KERNEL32.dll_HeapFree]
add esp, 0x258
pop esi
pop edi
pop ebx
pop ebp
ret
lea ecx, [esp + 0x24]
mov edx, ebx
push 1
push 1
push esi
call fcn.004e8d40
add esp, 0xc
mov ebx, dword [esp + 0x2c]
jmp 0x463734
mov eax, ecx
lea ecx, [esp + 0x8c]
mov dword [esp + 8], edx
push 0x24
push 4
push eax
call fcn.004e8d40
add esp, 0xc
mov eax, dword [esp + 0x90]
mov ebp, dword [esp + 0x94]
jmp 0x46303c
mov ecx, dword [esp + 4]
mov edi, edx
mov edx, esi
push 1
push 1
push ebp
call fcn.004e8d40
mov edx, edi
add esp, 0xc
mov eax, dword [esp + 4]
mov esi, dword [eax + 8]
jmp 0x46385a
mov ebp, dword [esp + 4]
mov edi, edx
mov edx, esi
mov ecx, ebp
push 1
push 1
push ebx
call fcn.004e8d40
mov edx, edi
add esp, 0xc
mov esi, dword [ebp + 8]
jmp 0x4638ce
lea ecx, [esp + 0x8c]
push 0x24
push 4
push dword [esp + 8]
call fcn.004e8d40
mov ecx, dword [esp + 0xc]
add esp, 0xc
mov edi, dword [esp + 0x90]
mov ebp, dword [esp + 0x94]
mov eax, dword [esp + 0x40]
jmp 0x4630da
lea ecx, [esp + 0x8c]
push 0x24
push 4
push esi
call fcn.004e8d40
add esp, 0xc
mov ebp, dword [esp + 0x94]
jmp 0x4631d6
ud2