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

Disassembly:
mov ecx, dword [0x8602c0]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x68]
cmp eax, dword [ecx + 8]
jbe 0x51a906
sub esp, 0xe8
mov edx, dword [esp + 0xf4]
test edx, edx
jbe 0x51a8fc
mov ebx, dword [esp + 0xec]
mov ebp, dword [ebx]
mov esi, dword [esp + 0xf0]
xor ebp, dword [esi]
cmp edx, 1
jbe 0x51a8f0
mov edi, dword [ebx + 4]
xor edi, dword [esi + 4]
cmp edx, 2
jbe 0x51a8e4
mov eax, dword [ebx + 8]
xor eax, dword [esi + 8]
cmp edx, 3
jbe 0x51a8d8
mov ecx, dword [ebx + 0xc]
xor ecx, dword [esi + 0xc]
cmp edx, 4
jbe 0x51a8cc
mov dword [esp + 0x64], eax
mov eax, dword [ebx + 0x10]
xor eax, dword [esi + 0x10]
cmp edx, 5
jbe 0x51a8c0
mov dword [esp + 0x60], eax
mov eax, dword [ebx + 0x14]
xor eax, dword [esi + 0x14]
cmp edx, 6
jbe 0x51a8b4
mov dword [esp + 0x30], eax
mov eax, dword [ebx + 0x18]
xor eax, dword [esi + 0x18]
cmp edx, 7
jbe 0x51a8a8
mov dword [esp + 0x58], eax
mov eax, dword [ebx + 0x1c]
xor eax, dword [esi + 0x1c]
cmp edx, 8
jbe 0x51a89c
mov dword [esp + 0x54], eax
mov eax, dword [ebx + 0x20]
xor eax, dword [esi + 0x20]
cmp edx, 9
jbe 0x51a890
mov dword [esp + 0x1c], eax
mov eax, dword [ebx + 0x24]
xor eax, dword [esi + 0x24]
cmp edx, 0xa
jbe 0x51a884
mov dword [esp + 0x70], eax
mov eax, dword [ebx + 0x28]
xor eax, dword [esi + 0x28]
cmp edx, 0xb
jbe 0x51a878
mov dword [esp + 0x80], eax
mov eax, dword [ebx + 0x2c]
xor eax, dword [esi + 0x2c]
cmp edx, 0xc
jbe 0x51a86c
mov dword [esp + 0x74], eax
mov eax, dword [ebx + 0x30]
xor eax, dword [esi + 0x30]
cmp edx, 0xd
jbe 0x51a860
mov dword [esp + 0x3c], eax
mov eax, dword [ebx + 0x34]
xor eax, dword [esi + 0x34]
cmp edx, 0xe
jbe 0x51a854
mov dword [esp + 0x40], eax
mov eax, dword [ebx + 0x38]
xor eax, dword [esi + 0x38]
cmp edx, 0xf
jbe 0x51a848
mov dword [esp + 0x48], ebp
mov dword [esp + 0x34], edi
mov dword [esp + 0x8c], ecx
mov dword [esp + 0x6c], eax
mov edx, dword [ebx + 0x3c]
xor edx, dword [esi + 0x3c]
mov dword [esp + 0x28], edx
mov esi, dword [esp + 0x80]
mov dword [esp + 0xe0], eax
xor eax, eax
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 0x94], eax
mov dword [esp + 0xd8], ecx
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x24], ecx
mov dword [esp + 0xd0], edx
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x20], edx
mov dword [esp + 0xc8], ebx
mov ebx, dword [esp + 0x70]
mov dword [esp + 0x14], ebx
mov dword [esp + 0xc0], ebp
mov ebp, dword [esp + 0x30]
mov dword [esp + 0x5c], ebp
mov dword [esp + 0xb8], esi
mov esi, dword [esp + 0x40]
mov dword [esp + 0x4c], esi
mov eax, dword [esp + 0xe0]
mov esi, dword [esp + 0xb8]
mov dword [esp + 0xb0], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 0x2c], eax
mov dword [esp + 0xa8], esi
mov esi, dword [esp + 0x64]
mov dword [esp + 0x50], esi
mov ecx, dword [esp + 0xd8]
mov edx, dword [esp + 0xd0]
mov dword [esp + 0xa0], ecx
mov ecx, dword [esp + 0x74]
mov dword [esp + 0x68], ecx
mov dword [esp + 0x98], edx
mov edx, dword [esp + 0x54]
mov dword [esp + 0x78], edx
mov ebx, dword [esp + 0xc8]
mov ebp, dword [esp + 0xc0]
mov eax, dword [esp + 0xe0]
mov esi, dword [esp + 0xb8]
mov ecx, dword [esp + 0xd8]
mov edx, dword [esp + 0xd0]
jmp 0x51a582
mov dword [esp + 0x18], ecx
mov dword [esp + 0x84], edx
mov dword [esp + 0x7c], eax
mov dword [esp + 0x90], esi
mov dword [esp + 0x38], edi
mov ebx, dword [esp + 0x24]
lea ecx, [ebp + ebx]
mov eax, dword [esp + 0x5c]
add edi, eax
mov eax, dword [esp + 0x2c]
add eax, esi
mov esi, dword [esp + 0x68]
add esi, edx
mov dword [esp + 0x10], esi
rol ecx, 7
mov edx, dword [esp + 0x94]
xor edx, ecx
mov dword [esp + 0x94], edx
lea ecx, [ebp + edx]
rol ecx, 9
mov esi, dword [esp + 0x20]
xor esi, ecx
mov dword [esp + 0x20], esi
lea ecx, [esi + edx]
rol ecx, 0xd
xor ebx, ecx
mov dword [esp + 0x24], ebx
lea ecx, [ebx + esi]
rol ecx, 0x12
xor ebp, ecx
mov dword [esp + 0x88], ebp
rol edi, 7
mov ecx, dword [esp + 0x14]
xor ecx, edi
mov dword [esp + 0x14], ecx
mov edi, dword [esp + 0x5c]
lea ebx, [edi + ecx]
rol ebx, 9
mov esi, dword [esp + 0x4c]
xor esi, ebx
mov dword [esp + 0x4c], esi
lea ebx, [esi + ecx]
rol ebx, 0xd
mov ebp, dword [esp + 0x38]
xor ebp, ebx
lea ebx, [ebp + esi]
rol ebx, 0x12
xor edi, ebx
mov dword [esp + 0x5c], edi
lea ebx, [edi + edx]
mov dword [esp + 0xc], ebx
rol eax, 7
mov esi, dword [esp + 0x7c]
xor eax, esi
mov dword [esp + 0x7c], eax
mov esi, dword [esp + 0x90]
lea edx, [esi + eax]
rol edx, 9
mov edi, dword [esp + 0x50]
xor edi, edx
mov dword [esp + 0x50], edi
lea edx, [edi + eax]
rol edx, 0xd
mov ebx, dword [esp + 0x2c]
xor ebx, edx
mov dword [esp + 0x2c], ebx
lea edx, [ebx + edi]
rol edx, 0x12
xor esi, edx
mov dword [esp + 0x90], esi
lea edx, [esi + ecx]
mov dword [esp + 8], edx
mov ecx, dword [esp + 0x10]
rol ecx, 7
mov esi, dword [esp + 0x18]
xor ecx, esi
mov dword [esp + 0x18], ecx
mov esi, dword [esp + 0x84]
lea edx, [esi + ecx]
mov ebx, dword [esp + 0x88]
lea edi, [ecx + ebx]
rol edx, 9
mov ebx, dword [esp + 0x78]
xor ebx, edx
lea edx, [ebx + ecx]
rol edx, 0xd
mov ecx, dword [esp + 0x68]
xor ecx, edx
lea edx, [ecx + ebx]
rol edx, 0x12
xor edx, esi
lea esi, [edx + eax]
rol edi, 7
xor edi, ebp
mov dword [esp + 0x38], edi
mov ebp, dword [esp + 0x88]
add ebp, edi
rol ebp, 9
mov eax, dword [esp + 0x50]
xor eax, ebp
mov dword [esp + 0x50], eax
lea ebp, [eax + edi]
rol ebp, 0xd
mov edi, dword [esp + 0x18]
xor edi, ebp
mov dword [esp + 0x18], edi
lea ebp, [edi + eax]
rol ebp, 0x12
mov eax, dword [esp + 0xc]
rol eax, 7
mov edi, dword [esp + 0x2c]
xor eax, edi
mov dword [esp + 0x2c], eax
mov edi, dword [esp + 0x5c]
add edi, eax
rol edi, 9
xor ebx, edi
mov dword [esp + 0x78], ebx
lea edi, [ebx + eax]
rol edi, 0xd
mov eax, dword [esp + 0x94]
xor eax, edi
mov dword [esp + 0x94], eax
lea edi, [eax + ebx]
rol edi, 0x12
mov eax, dword [esp + 8]
rol eax, 7
xor eax, ecx
mov dword [esp + 0x68], eax
mov ecx, dword [esp + 0x90]
lea ebx, [eax + ecx]
rol ebx, 9
mov ecx, dword [esp + 0x20]
xor ecx, ebx
mov dword [esp + 0x20], ecx
lea ebx, [ecx + eax]
rol ebx, 0xd
mov eax, dword [esp + 0x14]
xor eax, ebx
mov dword [esp + 0x14], eax
lea ebx, [eax + ecx]
rol ebx, 0x12
rol esi, 7
mov eax, dword [esp + 0x24]
xor eax, esi
mov dword [esp + 0x24], eax
lea esi, [eax + edx]
rol esi, 9
mov ecx, dword [esp + 0x4c]
xor ecx, esi
lea esi, [ecx + eax]
rol esi, 0xd
mov eax, dword [esp + 0x7c]
xor eax, esi
mov dword [esp + 0x7c], eax
lea esi, [eax + ecx]
rol esi, 0x12
mov eax, dword [esp + 0x44]
add eax, 2
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x88]
xor ebp, eax
mov eax, dword [esp + 0x5c]
xor eax, edi
mov edi, dword [esp + 0x90]
xor edi, ebx
xor edx, esi
mov ebx, dword [esp + 0x78]
mov esi, dword [esp + 0x68]
mov ebx, dword [esp + 0xec]
mov dword [esp + 0x5c], eax
mov dword [esp + 0x4c], ecx
mov eax, dword [esp + 0x7c]
mov esi, edi
mov ecx, dword [esp + 0x18]
mov edi, dword [esp + 0x38]
mov ebx, dword [esp + 0x44]
cmp ebx, 8
jl 0x51a317
mov ebx, dword [esp + 0x48]
add ebx, ebp
mov ebp, dword [esp + 0x34]
add ebp, edi
mov dword [esp + 0x38], ebp
mov edi, dword [esp + 0x50]
mov ebp, dword [esp + 0x64]
add ebp, edi
mov dword [esp + 0x50], ebp
mov edi, dword [esp + 0x8c]
add edi, ecx
mov ecx, edi
mov edi, dword [esp + 0x94]
mov ebp, dword [esp + 0x60]
add ebp, edi
mov dword [esp + 0x94], ebp
mov edi, dword [esp + 0x5c]
mov ebp, dword [esp + 0x30]
add ebp, edi
mov dword [esp + 0x5c], ebp
mov edi, dword [esp + 0x2c]
mov ebp, dword [esp + 0x58]
add ebp, edi
mov dword [esp + 0x2c], ebp
mov edi, dword [esp + 0x78]
mov ebp, dword [esp + 0x54]
add ebp, edi
mov dword [esp + 0x78], ebp
mov edi, dword [esp + 0x20]
mov ebp, dword [esp + 0x1c]
add ebp, edi
mov dword [esp + 0x20], ebp
mov edi, dword [esp + 0x14]
mov ebp, dword [esp + 0x70]
add ebp, edi
mov edi, dword [esp + 0x80]
add esi, edi
mov dword [esp + 0x90], esi
mov edi, dword [esp + 0x68]
mov esi, dword [esp + 0x74]
add esi, edi
mov dword [esp + 0x68], esi
mov edi, dword [esp + 0x24]
mov esi, dword [esp + 0x3c]
add esi, edi
mov dword [esp + 0x24], esi
mov edi, dword [esp + 0x4c]
mov esi, dword [esp + 0x40]
add esi, edi
mov edi, dword [esp + 0x6c]
add edi, eax
mov eax, edi
mov edi, dword [esp + 0x28]
add edx, edi
mov edi, dword [esp + 0x100]
test edi, edi
jbe 0x51a83f
mov dword [esp + 0x4c], esi
mov dword [esp + 0x84], edx
mov edx, dword [esp + 0xfc]
mov dword [edx], ebx
mov esi, dword [esp + 0xec]
mov dword [esi], ebx
cmp edi, 1
jbe 0x51a833
mov ebx, dword [esp + 0x38]
mov dword [edx + 4], ebx
mov dword [esi + 4], ebx
cmp edi, 2
jbe 0x51a827
mov ebx, dword [esp + 0x50]
mov dword [edx + 8], ebx
mov dword [esi + 8], ebx
cmp edi, 3
jbe 0x51a81b
mov dword [edx + 0xc], ecx
mov dword [esi + 0xc], ecx
cmp edi, 4
jbe 0x51a80f
mov ebx, dword [esp + 0x94]
mov dword [edx + 0x10], ebx
mov dword [esi + 0x10], ebx
cmp edi, 5
jbe 0x51a803
mov ebx, dword [esp + 0x5c]
mov dword [edx + 0x14], ebx
mov dword [esi + 0x14], ebx
cmp edi, 6
jbe 0x51a7f7
mov ebx, dword [esp + 0x2c]
mov dword [edx + 0x18], ebx
mov dword [esi + 0x18], ebx
cmp edi, 7
jbe 0x51a7eb
mov ebx, dword [esp + 0x78]
mov dword [edx + 0x1c], ebx
mov dword [esi + 0x1c], ebx
cmp edi, 8
jbe 0x51a7df
mov ebx, dword [esp + 0x20]
mov dword [edx + 0x20], ebx
mov dword [esi + 0x20], ebx
cmp edi, 9
jbe 0x51a7d3
mov dword [edx + 0x24], ebp
mov dword [esi + 0x24], ebp
cmp edi, 0xa
jbe 0x51a7c7
mov ebx, dword [esp + 0x90]
mov dword [edx + 0x28], ebx
mov dword [esi + 0x28], ebx
cmp edi, 0xb
jbe 0x51a7bb
mov ebx, dword [esp + 0x68]
mov dword [edx + 0x2c], ebx
mov dword [esi + 0x2c], ebx
cmp edi, 0xc
jbe 0x51a7af
mov ebx, dword [esp + 0x24]
mov dword [edx + 0x30], ebx
mov dword [esi + 0x30], ebx
cmp edi, 0xd
jbe 0x51a7a3
mov ebx, dword [esp + 0x4c]
mov dword [edx + 0x34], ebx
mov dword [esi + 0x34], ebx
cmp edi, 0xe
jbe 0x51a797
mov dword [edx + 0x38], eax
mov dword [esi + 0x38], eax
cmp edi, 0xf
jbe 0x51a78b
mov eax, dword [esp + 0x84]
mov dword [edx + 0x3c], eax
mov dword [esi + 0x3c], eax
add esp, 0xe8
ret
mov eax, 0xf
mov ecx, eax
call fcn.00467cb0
mov eax, 0xe
mov ecx, eax
call fcn.00467cb0
mov eax, 0xd
mov ecx, eax
call fcn.00467cb0
mov eax, 0xc
mov ecx, eax
call fcn.00467cb0
mov eax, 0xb
mov ecx, eax
call fcn.00467cb0
mov eax, 0xa
mov ecx, eax
call fcn.00467cb0
mov eax, 9
mov ecx, eax
call fcn.00467cb0
mov eax, 8
mov ecx, eax
call fcn.00467cb0
mov eax, 7
mov ecx, eax
call fcn.00467cb0
mov eax, 6
mov ecx, eax
call fcn.00467cb0
mov eax, 5
mov ecx, eax
call fcn.00467cb0
mov eax, 4
mov ecx, eax
call fcn.00467cb0
mov eax, 3
mov ecx, eax
call fcn.00467cb0
mov eax, 2
mov ecx, eax
call fcn.00467cb0
mov eax, 1
mov ecx, eax
call fcn.00467cb0
xor eax, eax
mov ecx, eax
call fcn.00467cb0
mov eax, 0xf
mov ecx, eax
call fcn.00467cb0
mov eax, 0xe
mov ecx, eax
call fcn.00467cb0
mov eax, 0xd
mov ecx, eax
call fcn.00467cb0
mov eax, 0xc
mov ecx, eax
call fcn.00467cb0
mov eax, 0xb
mov ecx, eax
call fcn.00467cb0
mov eax, 0xa
mov ecx, eax
call fcn.00467cb0
mov eax, 9
mov ecx, eax
call fcn.00467cb0
mov eax, 8
mov ecx, eax
call fcn.00467cb0
mov eax, 7
mov ecx, eax
call fcn.00467cb0
mov eax, 6
mov ecx, eax
call fcn.00467cb0
mov eax, 5
mov ecx, eax
call fcn.00467cb0
mov eax, 4
mov ecx, eax
call fcn.00467cb0
mov eax, 3
mov ecx, eax
call fcn.00467cb0
mov eax, 2
mov ecx, eax
call fcn.00467cb0
mov eax, 1
mov ecx, eax
call fcn.00467cb0
xor eax, eax
mov ecx, eax
call fcn.00467cb0
nop
call fcn.00466840
jmp fcn.0051a0c0