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

Disassembly:
lea r12, [rsp - 0xc8]
cmp r12, qword [r14 + 0x10]
jbe 0x512c43
push rbp
mov rbp, rsp
sub rsp, 0x140
movabs rdx, 0xaf1fd690849671a3
mov qword [rsp + 0xb2], rdx
movabs rdx, 0xe5a096056929435a
mov qword [rsp + 0xba], rdx
lea rdi, [rsp + 0xc0]
lea rsi, [0x0058ce2a]
nop word [rax + rax]
nop dword [rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.004584d0
mov rbp, qword [rbp]
movups xmmword [rsp + 0x6a], xmm15
movups xmmword [rsp + 0x72], xmm15
movups xmmword [rsp + 0x82], xmm15
movups xmmword [rsp + 0x92], xmm15
movups xmmword [rsp + 0xa2], xmm15
movzx edx, byte [rsp + 0xdd]
mov byte [rsp + 0x28], dl
movzx r8d, byte [rsp + 0x11e]
movzx r9d, byte [rsp + 0x13e]
mov byte [rsp + 0x27], r9b
movzx r10d, byte [rsp + 0x12a]
movzx r11d, byte [rsp + 0xed]
movzx r12d, byte [rsp + 0x11b]
movzx r13d, byte [rsp + 0x123]
mov byte [rsp + 0x26], r13b
movzx r15d, byte [rsp + 0xeb]
mov byte [rsp + 0x25], r15b
movzx eax, byte [rsp + 0x116]
movzx ecx, byte [rsp + 0x11c]
mov byte [rsp + 0x24], cl
movzx ebx, byte [rsp + 0x122]
movzx esi, byte [rsp + 0xf1]
movzx edi, byte [rsp + 0xc8]
mov byte [rsp + 0x23], dil
movzx edx, byte [rsp + 0x10c]
mov byte [rsp + 0x22], dl
movzx edx, byte [rsp + 0x13f]
mov byte [rsp + 0x21], dl
movzx r13d, byte [rsp + 0x12f]
movzx r9d, byte [rsp + 0x100]
mov byte [rsp + 0x20], r9b
movzx edx, byte [rsp + 0x13d]
movzx edi, byte [rsp + 0xd5]
mov byte [rsp + 0x1f], dil
xor r13d, edx
mov byte [rsp + 0x1e], r13b
movzx edx, byte [rsp + 0xfe]
mov byte [rsp + 0x1d], dl
movzx r13d, byte [rsp + 0x11f]
movzx edi, byte [rsp + 0x120]
mov byte [rsp + 0x1c], dil
movzx edi, byte [rsp + 0x114]
mov byte [rsp + 0x1b], dil
movzx edi, byte [rsp + 0xde]
mov byte [rsp + 0x1a], dil
movzx edi, byte [rsp + 0x11d]
mov byte [rsp + 0x19], dil
movzx edi, byte [rsp + 0xdb]
mov byte [rsp + 0x18], dil
movzx edi, byte [rsp + 0x12b]
movzx r9d, byte [rsp + 0x134]
mov byte [rsp + 0x69], r9b
movzx r9d, byte [rsp + 0xff]
mov byte [rsp + 0x68], r9b
movzx r9d, byte [rsp + 0x139]
mov byte [rsp + 0x67], r9b
movzx r9d, byte [rsp + 0xf8]
mov byte [rsp + 0x66], r9b
movzx r9d, byte [rsp + 0x10e]
mov byte [rsp + 0x65], r9b
movzx r9d, byte [rsp + 0xf0]
mov byte [rsp + 0x64], r9b
movzx r9d, byte [rsp + 0x118]
mov byte [rsp + 0x63], r9b
movzx edx, byte [rsp + 0xfb]
mov byte [rsp + 0x62], dl
movzx edx, byte [rsp + 0x135]
mov byte [rsp + 0x61], dl
movzx edx, byte [rsp + 0x136]
mov byte [rsp + 0x60], dl
movzx edx, byte [rsp + 0x106]
mov byte [rsp + 0x5f], dl
movzx edx, byte [rsp + 0x124]
mov byte [rsp + 0x5e], dl
movzx edx, byte [rsp + 0xfc]
mov byte [rsp + 0x5d], dl
movzx edx, byte [rsp + 0x101]
mov byte [rsp + 0x5c], dl
movzx edx, byte [rsp + 0xec]
mov byte [rsp + 0x5b], dl
movzx edx, byte [rsp + 0x12e]
mov byte [rsp + 0x5a], dl
movzx edx, byte [rsp + 0xdc]
mov byte [rsp + 0x59], dl
movzx edx, byte [rsp + 0xd3]
mov byte [rsp + 0x58], dl
movzx edx, byte [rsp + 0xcf]
mov byte [rsp + 0x57], dl
movzx edx, byte [rsp + 0x119]
mov byte [rsp + 0x56], dl
movzx edx, byte [rsp + 0x125]
mov byte [rsp + 0x55], dl
movzx edx, byte [rsp + 0xdf]
mov byte [rsp + 0x54], dl
movzx edx, byte [rsp + 0xb9]
mov byte [rsp + 0x53], dl
movzx edx, byte [rsp + 0xc7]
movzx r9d, byte [rsp + 0xb7]
mov byte [rsp + 0x52], r9b
sub eax, edx
mov byte [rsp + 0x51], al
movzx edx, byte [rsp + 0xf7]
mov byte [rsp + 0x50], dl
movzx eax, byte [rsp + 0x121]
mov byte [rsp + 0x4f], al
movzx r9d, byte [rsp + 0x105]
mov byte [rsp + 0x4e], r9b
movzx edx, byte [rsp + 0xce]
mov byte [rsp + 0x4d], dl
movzx edx, byte [rsp + 0xe3]
mov byte [rsp + 0x4c], dl
movzx r9d, byte [rsp + 0xc9]
mov byte [rsp + 0x4b], r9b
movzx r9d, byte [rsp + 0xf4]
mov byte [rsp + 0x4a], r9b
movzx r9d, byte [rsp + 0x129]
mov byte [rsp + 0x49], r9b
movzx r9d, byte [rsp + 0xd6]
mov byte [rsp + 0x48], r9b
movzx edx, byte [rsp + 0x13a]
mov byte [rsp + 0x47], dl
movzx edx, byte [rsp + 0x127]
mov byte [rsp + 0x46], dl
movzx edx, byte [rsp + 0xea]
movzx eax, byte [rsp + 0x108]
mov byte [rsp + 0x45], al
movzx eax, byte [rsp + 0x113]
movzx r9d, byte [rsp + 0x109]
mov byte [rsp + 0x44], r9b
movzx r9d, byte [rsp + 0xd4]
mov byte [rsp + 0x43], r9b
movzx r9d, byte [rsp + 0xca]
sub eax, edx
mov byte [rsp + 0x42], al
sub r9d, esi
mov byte [rsp + 0x41], r9b
movzx edx, byte [rsp + 0x138]
mov byte [rsp + 0x40], dl
movzx esi, byte [rsp + 0x132]
mov byte [rsp + 0x3f], sil
movzx r9d, byte [rsp + 0x133]
mov byte [rsp + 0x3e], r9b
movzx eax, byte [rsp + 0x128]
movzx esi, byte [rsp + 0x131]
mov byte [rsp + 0x3d], sil
movzx r9d, byte [rsp + 0x137]
movzx esi, byte [rsp + 0xf9]
movzx edx, byte [rsp + 0x112]
mov byte [rsp + 0x3c], dl
movzx edx, byte [rsp + 0xcc]
movzx ecx, byte [rsp + 0xe7]
movzx r15d, byte [rsp + 0xba]
xor eax, ecx
mov byte [rsp + 0x3b], al
xor edi, edx
mov byte [rsp + 0x3a], dil
movzx edx, byte [rsp + 0x126]
movzx ecx, byte [rsp + 0x13b]
sub r13d, edx
mov byte [rsp + 0x39], r13b
sub ecx, esi
mov byte [rsp + 0x38], cl
movzx edx, byte [rsp + 0x110]
movzx esi, byte [rsp + 0xf5]
movzx r13d, byte [rsp + 0xbc]
movzx ecx, byte [rsp + 0x102]
mov byte [rsp + 0x37], cl
movzx eax, byte [rsp + 0xee]
mov byte [rsp + 0x36], al
movzx edi, byte [rsp + 0x12d]
mov byte [rsp + 0x35], dil
add edx, r9d
mov byte [rsp + 0x34], dl
movzx r9d, byte [rsp + 0xd0]
movzx edx, byte [rsp + 0x103]
movzx eax, byte [rsp + 0x11a]
movzx ecx, byte [rsp + 0xe1]
mov byte [rsp + 0x33], cl
movzx ecx, byte [rsp + 0xe2]
movzx edi, byte [rsp + 0xb3]
xor edx, r9d
mov byte [rsp + 0x32], dl
sub eax, edi
mov byte [rsp + 0x31], al
movzx r9d, byte [rsp + 0x115]
mov byte [rsp + 0x30], r9b
movzx edi, byte [rsp + 0x13c]
mov byte [rsp + 0x2f], dil
movzx edx, byte [rsp + 0xfa]
movzx eax, byte [rsp + 0xcb]
movzx edi, byte [rsp + 0xc5]
movzx r9d, byte [rsp + 0x111]
sub edi, r11d
mov byte [rsp + 0x2e], dil
sub r10d, r9d
mov byte [rsp + 0x2d], r10b
movzx r9d, byte [rsp + 0xb6]
movzx r11d, byte [rsp + 0xd7]
movzx r10d, byte [rsp + 0xb4]
xor r9d, r8d
mov byte [rsp + 0x2c], r9b
xor eax, r10d
mov byte [rsp + 0x2b], al
movzx r8d, byte [rsp + 0xd9]
mov byte [rsp + 0x2a], r8b
xor ebx, r12d
mov byte [rsp + 0x29], bl
movzx r10d, byte [rsp + 0x24]
movzx r12d, byte [rsp + 0x25]
sub r10d, r12d
mov byte [rsp + 0x25], r10b
movzx r12d, byte [rsp + 0xb5]
movzx ebx, byte [rsp + 0xe6]
movzx r10d, byte [rsp + 0x63]
xor r12d, r10d
mov byte [rsp + 0x24], r12b
movzx r10d, byte [rsp + 0x1d]
add r10d, ebx
mov byte [rsp + 0x1d], r10b
movzx r12d, byte [rsp + 0x20]
movzx r10d, byte [rsp + 0x23]
add r10d, r12d
mov byte [rsp + 0x23], r10b
movzx r12d, byte [rsp + 0xbf]
mov byte [rsp + 0x20], r12b
movzx eax, byte [rsp + 0xd1]
movzx r10d, byte [rsp + 0x1b]
movzx r9d, byte [rsp + 0x1a]
xor r10d, r9d
mov byte [rsp + 0x1b], r10b
movzx r9d, byte [rsp + 0x62]
sub eax, r9d
mov byte [rsp + 0x1a], al
movzx r9d, byte [rsp + 0x117]
mov byte [rsp + 0x63], r9b
movzx r10d, byte [rsp + 0xef]
movzx r9d, byte [rsp + 0x68]
movzx r12d, byte [rsp + 0x19]
add r9d, r12d
mov byte [rsp + 0x19], r9b
movzx r12d, byte [rsp + 0x5e]
sub r10d, r12d
mov byte [rsp + 0x68], r10b
movzx r12d, byte [rsp + 0x66]
movzx r10d, byte [rsp + 0x21]
xor r12d, r10d
mov byte [rsp + 0x21], r12b
movzx r10d, byte [rsp + 0xf2]
movzx r12d, byte [rsp + 0x64]
movzx r9d, byte [rsp + 0x61]
sub r12d, r9d
mov byte [rsp + 0x66], r12b
movzx r9d, byte [rsp + 0x65]
sub r10d, r9d
mov byte [rsp + 0x65], r10b
movzx r9d, byte [rsp + 0xd2]
movzx r10d, byte [rsp + 0xda]
mov byte [rsp + 0x64], r10b
movzx ebx, byte [rsp + 0xb8]
movzx edi, byte [rsp + 0xfd]
movzx r12d, byte [rsp + 0x48]
sub ebx, r12d
mov byte [rsp + 0x62], bl
movzx r12d, byte [rsp + 0x54]
xor edi, r12d
mov byte [rsp + 0x61], dil
movzx r12d, byte [rsp + 0x5a]
movzx r10d, byte [rsp + 0x55]
xor r12d, r10d
mov byte [rsp + 0x5e], r12b
movzx r10d, byte [rsp + 0xf6]
movzx r12d, byte [rsp + 0x4f]
movzx r8d, byte [rsp + 0x67]
sub r12d, r8d
mov byte [rsp + 0x67], r12b
movzx r8d, byte [rsp + 0x4c]
sub r10d, r8d
mov byte [rsp + 0x5a], r10b
movzx r8d, byte [rsp + 0x4a]
movzx r10d, byte [rsp + 0x4e]
sub r8d, r10d
mov byte [rsp + 0x55], r8b
movzx r10d, byte [rsp + 0x10a]
movzx r12d, byte [rsp + 0xe9]
movzx ebx, byte [rsp + 0xc1]
movzx r8d, byte [rsp + 0x5c]
sub r12d, r8d
mov byte [rsp + 0x5c], r12b
movzx r8d, byte [rsp + 0x40]
sub ebx, r8d
mov byte [rsp + 0x54], bl
movzx r8d, byte [rsp + 0x45]
movzx r12d, byte [rsp + 0x4b]
add r8d, r12d
mov byte [rsp + 0x4f], r8b
movzx r12d, byte [rsp + 0x49]
movzx r8d, byte [rsp + 0x43]
add r8d, r12d
mov byte [rsp + 0x4e], r8b
movzx r12d, byte [rsp + 0x10f]
mov byte [rsp + 0x4c], r12b
movzx edi, byte [rsp + 0xe4]
movzx r8d, byte [rsp + 0xe0]
movzx r12d, byte [rsp + 0x3d]
sub edi, r12d
mov byte [rsp + 0x4b], dil
movzx r12d, byte [rsp + 0x50]
sub r12d, r8d
mov byte [rsp + 0x50], r12b
movzx r8d, byte [rsp + 0x3c]
sub r15d, r8d
mov byte [rsp + 0x4a], r15b
movzx r8d, byte [rsp + 0xb2]
movzx edi, byte [rsp + 0xbb]
sub r9d, r8d
mov byte [rsp + 0x49], r9b
movzx r8d, byte [rsp + 0x69]
xor edi, r8d
xor esi, r13d
mov byte [rsp + 0x69], sil
movzx r8d, byte [rsp + 0xc2]
movzx r13d, byte [rsp + 0x52]
xor ecx, r13d
mov byte [rsp + 0x52], cl
movzx r13d, byte [rsp + 0x27]
add r8d, r13d
mov byte [rsp + 0x27], r8b
movzx r13d, byte [rsp + 0x10b]
movzx r8d, byte [rsp + 0x26]
sub edx, r8d
mov byte [rsp + 0x26], dl
movzx r8d, byte [rsp + 0x35]
add r8d, r13d
mov byte [rsp + 0x48], r8b
movzx r13d, byte [rsp + 0x5f]
xor r13d, r11d
mov byte [rsp + 0x5f], r13b
movzx r11d, byte [rsp + 0x2a]
movzx r8d, byte [rsp + 0x60]
sub r11d, r8d
mov byte [rsp + 0x60], r11b
movzx r8d, byte [rsp + 0xbd]
movzx ecx, byte [rsp + 0xe8]
movzx r12d, byte [rsp + 0x1c]
movzx edx, byte [rsp + 0x22]
add edx, r12d
mov byte [rsp + 0x22], dl
movzx r12d, byte [rsp + 0x20]
movzx r9d, byte [rsp + 0x18]
xor r12d, r9d
mov byte [rsp + 0x20], r12b
movzx r9d, byte [rsp + 0x57]
movzx edx, byte [rsp + 0x63]
sub r9d, edx
mov byte [rsp + 0x1c], r9b
movzx edx, byte [rsp + 0xcd]
movzx esi, byte [rsp + 0xc4]
movzx r9d, byte [rsp + 0x59]
movzx r11d, byte [rsp + 0x5d]
sub r9d, r11d
mov byte [rsp + 0x18], r9b
movzx r11d, byte [rsp + 0x5b]
sub r11d, esi
mov byte [rsp + 0x63], r11b
movzx r11d, byte [rsp + 0x56]
movzx r13d, byte [rsp + 0x53]
add r11d, r13d
mov byte [rsp + 0x5d], r11b
movzx r13d, byte [rsp + 0x4d]
movzx r11d, byte [rsp + 0x58]
add r11d, r13d
mov byte [rsp + 0x5b], r11b
movzx r13d, byte [rsp + 0x64]
add r10d, r13d
mov byte [rsp + 0x64], r10b
movzx r13d, byte [rsp + 0x46]
movzx r11d, byte [rsp + 0x44]
sub r13d, r11d
mov byte [rsp + 0x59], r13b
movzx r11d, byte [rsp + 0x4c]
movzx r13d, byte [rsp + 0x3e]
add r11d, r13d
mov byte [rsp + 0x58], r11b
movzx r13d, byte [rsp + 0x107]
movzx r10d, byte [rsp + 0x37]
movzx r11d, byte [rsp + 0x36]
add r10d, r11d
movzx r11d, byte [rsp + 0x33]
movzx r12d, byte [rsp + 0x1f]
xor r11d, r12d
mov byte [rsp + 0x1f], r11b
movzx r12d, byte [rsp + 0x2f]
movzx r11d, byte [rsp + 0x30]
sub r12d, r11d
movzx r11d, byte [rsp + 0x130]
movzx esi, byte [rsp + 0xbe]
add r8d, ecx
sub esi, r11d
movzx r11d, byte [rsp + 0xc3]
movzx ecx, byte [rsp + 0xe5]
sub r11d, edx
movzx edx, byte [rsp + 0xc6]
movzx r9d, byte [rsp + 0x47]
movzx r15d, byte [rsp + 0x3f]
xor r9d, r15d
sub edx, ecx
movzx r15d, byte [rsp + 0x10d]
movzx ecx, byte [rsp + 0xf3]
add r13d, r15d
movzx r15d, byte [rsp + 0x12c]
movzx ebx, byte [rsp + 0xd8]
sub r15d, ecx
movzx ecx, byte [rsp + 0x104]
movzx eax, byte [rsp + 0xc0]
add ecx, ebx
mov ebx, r9d
movzx r9d, byte [rsp + 0x28]
xor eax, r9d
mov byte [rsp + 0x6a], al
mov byte [rsp + 0x6b], r15b
mov byte [rsp + 0x6c], cl
mov byte [rsp + 0x6d], sil
mov byte [rsp + 0x6e], r13b
mov byte [rsp + 0x6f], dl
mov byte [rsp + 0x70], r11b
mov byte [rsp + 0x71], r8b
mov byte [rsp + 0x72], r12b
mov byte [rsp + 0x73], r10b
movzx edx, byte [rsp + 0x4a]
mov byte [rsp + 0x74], dl
mov byte [rsp + 0x75], bl
movzx edx, byte [rsp + 0x18]
mov byte [rsp + 0x76], dl
movzx edx, byte [rsp + 0x20]
mov byte [rsp + 0x77], dl
movzx edx, byte [rsp + 0x5f]
mov byte [rsp + 0x78], dl
movzx edx, byte [rsp + 0x3a]
mov byte [rsp + 0x79], dl
movzx edx, byte [rsp + 0x60]
mov byte [rsp + 0x7a], dl
mov byte [rsp + 0x7b], dil
movzx edx, byte [rsp + 0x58]
mov byte [rsp + 0x7c], dl
movzx edx, byte [rsp + 0x1c]
mov byte [rsp + 0x7d], dl
movzx edx, byte [rsp + 0x3b]
mov byte [rsp + 0x7e], dl
movzx edx, byte [rsp + 0x22]
mov byte [rsp + 0x7f], dl
movzx edx, byte [rsp + 0x64]
mov byte [rsp + 0x80], dl
movzx edx, byte [rsp + 0x49]
mov byte [rsp + 0x81], dl
movzx edx, byte [rsp + 0x1f]
mov byte [rsp + 0x82], dl
movzx edx, byte [rsp + 0x2c]
mov byte [rsp + 0x83], dl
movzx edx, byte [rsp + 0x1d]
mov byte [rsp + 0x84], dl
movzx edx, byte [rsp + 0x1a]
mov byte [rsp + 0x85], dl
movzx edx, byte [rsp + 0x5d]
mov byte [rsp + 0x86], dl
movzx edx, byte [rsp + 0x54]
mov byte [rsp + 0x87], dl
movzx edx, byte [rsp + 0x69]
mov byte [rsp + 0x88], dl
movzx edx, byte [rsp + 0x26]
mov byte [rsp + 0x89], dl
movzx edx, byte [rsp + 0x66]
mov byte [rsp + 0x8a], dl
movzx edx, byte [rsp + 0x59]
mov byte [rsp + 0x8b], dl
movzx edx, byte [rsp + 0x2e]
mov byte [rsp + 0x8c], dl
movzx edx, byte [rsp + 0x4e]
mov byte [rsp + 0x8d], dl
movzx edx, byte [rsp + 0x50]
mov byte [rsp + 0x8e], dl
movzx edx, byte [rsp + 0x52]
mov byte [rsp + 0x8f], dl
movzx edx, byte [rsp + 0x5c]
mov byte [rsp + 0x90], dl
movzx edx, byte [rsp + 0x48]
mov byte [rsp + 0x91], dl
movzx edx, byte [rsp + 0x5b]
mov byte [rsp + 0x92], dl
movzx edx, byte [rsp + 0x24]
mov byte [rsp + 0x93], dl
movzx edx, byte [rsp + 0x27]
mov byte [rsp + 0x94], dl
movzx edx, byte [rsp + 0x38]
mov byte [rsp + 0x95], dl
movzx edx, byte [rsp + 0x4f]
mov byte [rsp + 0x96], dl
movzx edx, byte [rsp + 0x5e]
mov byte [rsp + 0x97], dl
movzx edx, byte [rsp + 0x19]
mov byte [rsp + 0x98], dl
movzx edx, byte [rsp + 0x23]
mov byte [rsp + 0x99], dl
movzx edx, byte [rsp + 0x2b]
mov byte [rsp + 0x9a], dl
movzx edx, byte [rsp + 0x31]
mov byte [rsp + 0x9b], dl
movzx edx, byte [rsp + 0x39]
mov byte [rsp + 0x9c], dl
movzx edx, byte [rsp + 0x4b]
mov byte [rsp + 0x9d], dl
movzx edx, byte [rsp + 0x42]
mov byte [rsp + 0x9e], dl
movzx edx, byte [rsp + 0x55]
mov byte [rsp + 0x9f], dl
movzx edx, byte [rsp + 0x61]
mov byte [rsp + 0xa0], dl
movzx edx, byte [rsp + 0x63]
mov byte [rsp + 0xa1], dl
movzx edx, byte [rsp + 0x65]
mov byte [rsp + 0xa2], dl
movzx edx, byte [rsp + 0x1b]
mov byte [rsp + 0xa3], dl
movzx edx, byte [rsp + 0x1e]
mov byte [rsp + 0xa4], dl
movzx edx, byte [rsp + 0x25]
mov byte [rsp + 0xa5], dl
movzx edx, byte [rsp + 0x2d]
mov byte [rsp + 0xa6], dl
movzx edx, byte [rsp + 0x62]
mov byte [rsp + 0xa7], dl
movzx edx, byte [rsp + 0x51]
mov byte [rsp + 0xa8], dl
movzx edx, byte [rsp + 0x41]
mov byte [rsp + 0xa9], dl
movzx edx, byte [rsp + 0x68]
mov byte [rsp + 0xaa], dl
movzx edx, byte [rsp + 0x32]
mov byte [rsp + 0xab], dl
movzx edx, byte [rsp + 0x67]
mov byte [rsp + 0xac], dl
movzx edx, byte [rsp + 0x29]
mov byte [rsp + 0xad], dl
movzx edx, byte [rsp + 0x21]
mov byte [rsp + 0xae], dl
movzx edx, byte [rsp + 0x5a]
mov byte [rsp + 0xaf], dl
movzx edx, byte [rsp + 0x34]
mov byte [rsp + 0xb0], dl
xor eax, eax
lea rbx, [rsp + 0x6a]
mov ecx, 0x47
call fcn.00445b60
add rsp, 0x140
pop rbp
ret
call fcn.00455c20
jmp fcn.00511f40