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

Disassembly:
lea r12, [rsp - 0x38]
cmp r12, qword [r14 + 0x10]
jbe 0x512c4a
sub rsp, 0xb8
mov qword [rsp + 0xb0], rbp
lea rbp, [rsp + 0xb0]
movabs rdx, 0x7587a7082dd9c2d8
mov qword [rsp + 0x6e], rdx
movabs rdx, 0xb1aa7587a7082dd9
mov qword [rsp + 0x70], rdx
movabs rdx, 0x224b73ee8935d9c6
mov qword [rsp + 0x78], rdx
movabs rdx, 0x3288370dcb3d1074
mov qword [rsp + 0x80], rdx
movabs rdx, 0x9ae15a2eb1a4165e
mov qword [rsp + 0x88], rdx
movabs rdx, 0x667cc752e6bea912
mov qword [rsp + 0x90], rdx
movabs rdx, 0xb30ca0c34737907e
mov qword [rsp + 0x98], rdx
movabs rdx, 0x60aaafd4baadf3cf
mov qword [rsp + 0xa0], rdx
movabs rdx, 0x4f3ce20da76f13c1
mov qword [rsp + 0xa8], rdx
movups xmmword [rsp + 0x4c], xmm15
movups xmmword [rsp + 0x4e], xmm15
movups xmmword [rsp + 0x5e], xmm15
movzx edx, byte [rsp + 0x6e]
movzx esi, byte [rsp + 0xaa]
sub edx, esi
movzx esi, byte [rsp + 0x72]
movzx edi, byte [rsp + 0x97]
movzx r8d, byte [rsp + 0xa5]
movzx r9d, byte [rsp + 0x70]
movzx r10d, byte [rsp + 0x7a]
movzx r11d, byte [rsp + 0xa4]
movzx r12d, byte [rsp + 0x89]
movzx r13d, byte [rsp + 0xa6]
movzx r15d, byte [rsp + 0x99]
mov eax, r15d
movzx r15d, byte [rsp + 0x79]
mov ecx, r15d
movzx r15d, byte [rsp + 0x7f]
mov ebx, r15d
movzx r15d, byte [rsp + 0x92]
mov byte [rsp + 0x4b], r15b
movzx r15d, byte [rsp + 0x71]
mov byte [rsp + 0x4a], r15b
movzx r15d, byte [rsp + 0x84]
mov byte [rsp + 0x49], r15b
movzx r15d, byte [rsp + 0x6f]
mov byte [rsp + 0x48], r15b
movzx r15d, byte [rsp + 0x73]
mov byte [rsp + 0x47], r15b
movzx r15d, byte [rsp + 0x74]
mov byte [rsp + 0x46], r15b
movzx r15d, byte [rsp + 0x75]
mov byte [rsp + 0x45], r15b
movzx r15d, byte [rsp + 0x76]
mov byte [rsp + 0x44], r15b
movzx r15d, byte [rsp + 0x77]
mov byte [rsp + 0x43], r15b
movzx r15d, byte [rsp + 0x78]
mov byte [rsp + 0x42], r15b
movzx r15d, byte [rsp + 0x7b]
mov byte [rsp + 0x41], r15b
movzx r15d, byte [rsp + 0x7c]
mov byte [rsp + 0x40], r15b
movzx r15d, byte [rsp + 0x7d]
mov byte [rsp + 0x3f], r15b
movzx r15d, byte [rsp + 0x7e]
mov byte [rsp + 0x3e], r15b
movzx r15d, byte [rsp + 0x80]
mov byte [rsp + 0x3d], r15b
movzx r15d, byte [rsp + 0x81]
mov byte [rsp + 0x3c], r15b
movzx r15d, byte [rsp + 0x82]
mov byte [rsp + 0x3b], r15b
movzx r15d, byte [rsp + 0x83]
mov byte [rsp + 0x3a], r15b
movzx r15d, byte [rsp + 0x85]
mov byte [rsp + 0x39], r15b
movzx r15d, byte [rsp + 0x86]
mov byte [rsp + 0x38], r15b
movzx r15d, byte [rsp + 0x87]
mov byte [rsp + 0x37], r15b
movzx r15d, byte [rsp + 0x88]
mov byte [rsp + 0x36], r15b
movzx r15d, byte [rsp + 0x8a]
mov byte [rsp + 0x35], r15b
movzx r15d, byte [rsp + 0x8b]
mov byte [rsp + 0x34], r15b
movzx r15d, byte [rsp + 0x8c]
mov byte [rsp + 0x33], r15b
movzx r15d, byte [rsp + 0x8d]
mov byte [rsp + 0x32], r15b
movzx r15d, byte [rsp + 0x8e]
mov byte [rsp + 0x31], r15b
movzx r15d, byte [rsp + 0x8f]
mov byte [rsp + 0x30], r15b
movzx r15d, byte [rsp + 0x90]
mov byte [rsp + 0x2f], r15b
movzx r15d, byte [rsp + 0x91]
mov byte [rsp + 0x2e], r15b
movzx r15d, byte [rsp + 0x93]
mov byte [rsp + 0x2d], r15b
movzx r15d, byte [rsp + 0x94]
mov byte [rsp + 0x2c], r15b
movzx r15d, byte [rsp + 0x95]
mov byte [rsp + 0x2b], r15b
movzx r15d, byte [rsp + 0x96]
mov byte [rsp + 0x2a], r15b
movzx r15d, byte [rsp + 0x98]
mov byte [rsp + 0x29], r15b
movzx r15d, byte [rsp + 0x9a]
mov byte [rsp + 0x28], r15b
movzx r15d, byte [rsp + 0x9b]
mov byte [rsp + 0x27], r15b
movzx r15d, byte [rsp + 0x9c]
mov byte [rsp + 0x26], r15b
movzx r15d, byte [rsp + 0x9d]
mov byte [rsp + 0x25], r15b
movzx r15d, byte [rsp + 0x9e]
mov byte [rsp + 0x24], r15b
movzx r15d, byte [rsp + 0x9f]
mov byte [rsp + 0x23], r15b
movzx r15d, byte [rsp + 0xa0]
mov byte [rsp + 0x22], r15b
movzx r15d, byte [rsp + 0xa1]
mov byte [rsp + 0x21], r15b
movzx r15d, byte [rsp + 0xa2]
mov byte [rsp + 0x20], r15b
movzx r15d, byte [rsp + 0xa3]
mov byte [rsp + 0x1f], r15b
movzx r15d, byte [rsp + 0xa7]
mov byte [rsp + 0x1e], r15b
movzx r15d, byte [rsp + 0xa8]
mov byte [rsp + 0x1d], r15b
movzx r15d, byte [rsp + 0xa9]
mov byte [rsp + 0x1c], r15b
movzx r15d, byte [rsp + 0xab]
mov byte [rsp + 0x1b], r15b
movzx r15d, byte [rsp + 0xac]
mov byte [rsp + 0x1a], r15b
movzx r15d, byte [rsp + 0xad]
mov byte [rsp + 0x19], r15b
movzx r15d, byte [rsp + 0xae]
mov byte [rsp + 0x18], r15b
movzx r15d, byte [rsp + 0xaf]
mov byte [rsp + 0x4c], dl
xor edi, esi
mov byte [rsp + 0x4d], dil
xor r9d, r8d
mov byte [rsp + 0x4e], r9b
sub r10d, r11d
mov byte [rsp + 0x4f], r10b
sub r12d, r13d
mov byte [rsp + 0x50], r12b
lea edx, [rcx + rax]
mov byte [rsp + 0x51], dl
movzx edx, byte [rsp + 0x4b]
sub ebx, edx
mov byte [rsp + 0x52], bl
movzx edx, byte [rsp + 0x49]
movzx esi, byte [rsp + 0x4a]
xor edx, esi
mov byte [rsp + 0x53], dl
movzx edx, byte [rsp + 0x20]
movzx esi, byte [rsp + 0x28]
sub edx, esi
mov byte [rsp + 0x54], dl
movzx edx, byte [rsp + 0x1b]
movzx esi, byte [rsp + 0x42]
xor edx, esi
mov byte [rsp + 0x55], dl
movzx edx, byte [rsp + 0x30]
movzx esi, byte [rsp + 0x33]
sub edx, esi
mov byte [rsp + 0x56], dl
movzx edx, byte [rsp + 0x2b]
movzx esi, byte [rsp + 0x2c]
sub edx, esi
mov byte [rsp + 0x57], dl
movzx edx, byte [rsp + 0x45]
movzx esi, byte [rsp + 0x3c]
sub edx, esi
mov byte [rsp + 0x58], dl
movzx edx, byte [rsp + 0x31]
movzx esi, byte [rsp + 0x1d]
sub edx, esi
mov byte [rsp + 0x59], dl
movzx edx, byte [rsp + 0x21]
movzx esi, byte [rsp + 0x37]
add edx, esi
mov byte [rsp + 0x5a], dl
movzx edx, byte [rsp + 0x1f]
movzx esi, byte [rsp + 0x3a]
xor edx, esi
mov byte [rsp + 0x5b], dl
movzx edx, byte [rsp + 0x1a]
movzx esi, byte [rsp + 0x1c]
add edx, esi
mov byte [rsp + 0x5c], dl
movzx edx, byte [rsp + 0x43]
movzx esi, byte [rsp + 0x3e]
sub edx, esi
mov byte [rsp + 0x5d], dl
movzx edx, byte [rsp + 0x25]
movzx esi, byte [rsp + 0x22]
add edx, esi
mov byte [rsp + 0x5e], dl
movzx edx, byte [rsp + 0x3b]
xor edx, r15d
mov byte [rsp + 0x5f], dl
movzx edx, byte [rsp + 0x47]
movzx esi, byte [rsp + 0x46]
sub edx, esi
mov byte [rsp + 0x60], dl
movzx edx, byte [rsp + 0x32]
movzx esi, byte [rsp + 0x18]
xor edx, esi
mov byte [rsp + 0x61], dl
movzx edx, byte [rsp + 0x1e]
movzx esi, byte [rsp + 0x24]
xor edx, esi
mov byte [rsp + 0x62], dl
movzx edx, byte [rsp + 0x3f]
movzx esi, byte [rsp + 0x2f]
sub edx, esi
mov byte [rsp + 0x63], dl
movzx edx, byte [rsp + 0x26]
movzx esi, byte [rsp + 0x35]
add edx, esi
mov byte [rsp + 0x64], dl
movzx edx, byte [rsp + 0x48]
movzx esi, byte [rsp + 0x19]
xor edx, esi
mov byte [rsp + 0x65], dl
movzx edx, byte [rsp + 0x27]
movzx esi, byte [rsp + 0x2d]
add edx, esi
mov byte [rsp + 0x66], dl
movzx edx, byte [rsp + 0x3d]
movzx esi, byte [rsp + 0x34]
add edx, esi
mov byte [rsp + 0x67], dl
movzx edx, byte [rsp + 0x44]
movzx esi, byte [rsp + 0x39]
sub edx, esi
mov byte [rsp + 0x68], dl
movzx edx, byte [rsp + 0x23]
movzx esi, byte [rsp + 0x41]
xor edx, esi
mov byte [rsp + 0x69], dl
movzx edx, byte [rsp + 0x29]
movzx esi, byte [rsp + 0x36]
xor edx, esi
mov byte [rsp + 0x6a], dl
movzx edx, byte [rsp + 0x2a]
movzx esi, byte [rsp + 0x2e]
add edx, esi
mov byte [rsp + 0x6b], dl
movzx edx, byte [rsp + 0x38]
movzx esi, byte [rsp + 0x40]
add edx, esi
mov byte [rsp + 0x6c], dl
xor eax, eax
lea rbx, [rsp + 0x4c]
mov ecx, 0x21
call fcn.00441e20
mov rbp, qword [rsp + 0xb0]
add rsp, 0xb8
ret
call fcn.00451720
jmp fcn.00512660