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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0xfc
mov ecx, dword [esp + 0x12c]
mov edx, dword [esp + 0x128]
mov ebx, dword [esp + 0x120]
mov eax, dword [0x100c51b8]
xor eax, esp
mov dword [esp + 0xf8], eax
test ecx, ecx
mov eax, 0x8efd4076
mov esi, 0xe08649c4
cmove esi, eax
mov dword [esp + 0x88], esi
lea eax, [edx + ecx]
mov dword [esp + 0x84], eax
mov eax, 0xfadcd107
lea edi, [esp + 0xc0]
mov dword [esp + 0x30], ecx
cmp eax, 0xefbc18fd
jle 0x10053c35
cmp eax, 0x31a54aa7
jle 0x10053c99
cmp eax, 0x62f476a8
jle 0x10053d20
cmp eax, 0x74219e6d
jg 0x10053ec7
cmp eax, 0x62f476a9
je 0x1005414d
cmp eax, 0x72c79f77
jne 0x10053bd7
mov eax, dword [esp + 0xf0]
mov dword [esp + 0x48], eax
mov eax, dword [ebx + 0x24]
cmp dword [ebx + 0x20], 1
sbb eax, 0
mov eax, 0x427d09b2
mov ecx, 0xfcfd4203
cmovl eax, ecx
jmp 0x10053bd7
cmp eax, 0xcf259815
jg 0x10053cdf
cmp eax, 0xa6772f78
jle 0x10053e09
cmp eax, 0xc1bf8e1d
jg 0x10053f3f
cmp eax, 0xa6772f79
je 0x10054167
cmp eax, 0xa92d6836
jne 0x10053bd7
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x128]
movsx eax, byte [eax + ecx + 1]
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x6c]
cmp eax, 0x78
mov eax, 0x1f40ac29
mov ecx, 0x62f476a9
cmove eax, ecx
jmp 0x10053bd7
cmp eax, 0xfcfd4202
jle 0x10053e42
cmp eax, 0x1bf3d40d
jg 0x10053f67
cmp eax, 0xfcfd4203
je 0x1005417e
cmp eax, 0x9002955
jne 0x10053bd7
mov eax, 0xefbc18fe
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x3c], ecx
mov ecx, dword [esp + 0x58]
mov dword [esp + 0x5c], ecx
jmp 0x10053bd7
cmp eax, 0xe08649c3
jle 0x10053e77
cmp eax, 0xec2412a6
jg 0x10053f93
cmp eax, 0xe08649c4
je 0x10054190
cmp eax, 0xe412feeb
jne 0x10053bd7
mov eax, dword [ebx + 0x20]
sub eax, dword [esp + 0x48]
mov dword [esp + 0x60], eax
mov eax, 0x31a54aa8
jmp 0x10053bd7
cmp eax, 0x36f1298a
jg 0x10054129
cmp eax, 0x31a54aa8
je 0x100541bd
cmp eax, 0x334fc7a1
jne 0x10053bd7
lea ecx, [esp + 0xe0]
call fcn.10007c1e
lea esi, [esp + 0x118]
movsd xmm0, qword [esi]
movsd qword [esp + 0xac], xmm0
mov ecx, dword [esp + 0x20]
movsd xmm0, qword [esp + 0xac]
movsd qword [esp + 8], xmm0
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], eax
mov dword [esp + 4], edi
mov eax, dword [esp + 0x110]
mov dword [esp], eax
call fcn.10052b92
mov ecx, dword [esp + 0xc0]
mov edx, dword [esp + 0xc4]
mov dword [esi + 4], edx
mov dword [esi], ecx
mov eax, dword [esp + 0x54]
mov dword [esp + 0xc4], edx
mov dword [esp + 0xc0], ecx
mov ecx, 0x913d318c
cmp ecx, 0x38c07aae
je 0x10053ded
cmp ecx, 0xb2688834
je 0x100541fd
cmp ecx, 0x913d318c
jne 0x10053db9
mov dword [esp + 0x2c], eax
cmp dword [esp + 0x2c], 0
mov ecx, 0x38c07aae
mov edx, 0xb2688834
cmove ecx, edx
jmp 0x10053db9
movsx eax, byte [esp + 0x124]
mov dword [esp], eax
mov ecx, edi
call fcn.10053530
sub esp, 4
mov eax, dword [esp + 0x2c]
dec eax
jmp 0x10053db4
cmp eax, 0x8617bf5a
je 0x10054216
cmp eax, 0x8efd4076
je 0x10054237
cmp eax, 0x8f0dca91
jne 0x10053bd7
mov eax, dword [esp + 0x64]
cmp eax, 0x2d
sete al
mov dword [esp + 0x30], eax
mov eax, 0x8efd4076
jmp 0x10053bd7
cmp eax, 0xefbc18fe
je 0x1005425f
cmp eax, 0xf4131373
je 0x10054296
cmp eax, 0xfadcd107
jne 0x10053bd7
mov dword [esp + 0x30], 0
mov eax, dword [esp + 0x88]
jmp 0x10053bd7
cmp eax, 0xcf259816
je 0x100542c3
cmp eax, 0xd86983f5
je 0x100542dd
cmp eax, 0xdc4092c0
jne 0x10053bd7
mov ecx, dword [esp + 0x44]
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ebx, eax
mov ebp, dword [esp + 0x34]
lea ecx, [esp + 0xe0]
call fcn.10007c1e
mov byte [eax + ebp], bl
mov ebx, dword [esp + 0x120]
mov eax, 0x1bf3d40e
jmp 0x10053bd7
cmp eax, 0x74219e6e
je 0x10054350
cmp eax, 0x788d9eeb
jne 0x10053bd7
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x80]
sub ecx, eax
mov dword [esp + 0x78], ecx
movsx eax, byte [esp + 0x1f]
mov ecx, dword [esp + 0x78]
mov dword [esp + 8], eax
mov dword [esp], ecx
mov dword [esp + 4], 1
lea ecx, [esp + 0xe0]
call fcn.100529f0
sub esp, 0xc
mov eax, dword [esp + 0x50]
inc eax
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x7c]
cmp byte [eax], 0
mov eax, 0x9002955
mov ecx, 0xce36e4da
cmovg eax, ecx
mov ecx, dword [esp + 0x50]
mov dword [esp + 0x58], ecx
jmp 0x10053bd7
cmp eax, 0xc1bf8e1e
je 0x100543b9
cmp eax, 0xce36e4da
jne 0x10053bd7
mov eax, 0x9002955
mov ecx, dword [esp + 0x7c]
mov dword [esp + 0x58], ecx
jmp 0x10053bd7
cmp eax, 0x1bf3d40e
je 0x100543d4
cmp eax, 0x1f40ac29
jne 0x10053bd7
mov eax, dword [esp + 0x6c]
cmp eax, 0x58
mov eax, 0xeda46e1c
mov ecx, 0x62f476a9
jmp 0x1005422f
cmp eax, 0xec2412a7
je 0x1005440e
cmp eax, 0xeda46e1c
jne 0x10053bd7
mov eax, dword [esp + 0x24]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x28]
mov dword [esp + 4], eax
mov ebx, edi
mov edi, dword [esp + 0x128]
mov dword [esp], edi
call fcn.1009ee30
mov dword [esp + 0x90], eax
lea eax, [esp + 0xbe]
mov dword [esp + 0x8c], esi
mov esi, eax
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x40]
mov eax, dword [esp + 0x40]
mov word [eax], 0x2e
call fcn.1009ea5b
mov eax, dword [eax]
mov al, byte [eax]
mov byte [esp + 0xbe], al
mov dword [esp + 4], esi
mov dword [esp], edi
call fcn.1009ee30
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x120]
mov eax, dword [eax + 0x30]
mov ecx, dword [eax + 4]
mov dword [esp + 0xc4], ecx
mov eax, dword [ecx]
call dword [eax + 4]
mov dword [esp], ebx
call fcn.1004dfab
mov ebp, eax
mov ecx, ebx
call fcn.1004e112
lea edi, [esp + 0xe0]
mov dword [esp + 0x70], edi
mov eax, dword [esp + 0x70]
xor eax, eax
mov dword [esp + 0xe0], eax
mov dword [esp + 0xf0], eax
mov dword [esp + 0xf4], 0xf
mov byte [esp + 0xe0], 0
mov dword [esp + 4], eax
mov esi, dword [esp + 0x12c]
mov dword [esp], esi
mov ecx, edi
call fcn.10052c0a
sub esp, 8
mov ecx, edi
call fcn.10007c1e
mov edx, dword [ebp]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x84]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x128]
mov dword [esp], eax
mov edi, ebx
mov ebx, dword [esp + 0x120]
mov ecx, ebp
call dword [edx + 0x1c]
sub esp, 0xc
mov eax, dword [ebx + 0x30]
mov ecx, dword [eax + 4]
mov dword [esp + 0xc4], ecx
mov eax, dword [ecx]
call dword [eax + 4]
mov dword [esp], edi
call fcn.1005287d
mov dword [esp + 0x44], eax
mov ecx, edi
call fcn.1004e112
lea edx, [esp + 0xc8]
mov dword [esp + 0x74], edx
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x44]
mov eax, dword [ecx]
mov dword [esp], edx
call dword [eax + 0x14]
sub esp, 4
mov ecx, dword [esp + 0x44]
mov eax, dword [ecx]
call dword [eax + 0x10]
mov byte [esp + 0x1f], al
mov eax, dword [esp + 0x34]
cmp eax, esi
mov esi, dword [esp + 0x8c]
mov eax, 0xdc4092c0
mov ecx, 0x1bf3d40e
cmove eax, ecx
jmp 0x10053bd7
cmp eax, 0x427d09b2
jne 0x100544a8
mov eax, dword [esp + 0x48]
cmp eax, dword [ebx + 0x20]
mov eax, 0xfcfd4203
mov ecx, 0xe412feeb
cmovb eax, ecx
jmp 0x10053bd7
mov dword [esp + 0x28], 0x100be3fb
mov eax, 0xeda46e1c
mov ecx, dword [esp + 0x68]
mov dword [esp + 0x24], ecx
jmp 0x10053bd7
cmp dword [esp + 0x38], 0
mov eax, 0x72c79f77
mov ecx, 0xec2412a7
cmovg eax, ecx
jmp 0x10053bd7
mov dword [esp + 0x60], 0
mov eax, 0x31a54aa8
jmp 0x10053bd7
mov eax, dword [esp + 0x128]
movsx eax, byte [eax]
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x64]
cmp eax, 0x2b
mov eax, 0x8f0dca91
mov ecx, 0x8efd4076
cmove eax, ecx
mov cl, 1
mov dword [esp + 0x30], ecx
jmp 0x10053bd7
mov eax, dword [esp + 0x60]
mov dword [esp + 0x54], eax
mov eax, dword [ebx + 0x14]
mov ecx, 0x1c0
and eax, ecx
mov dword [esp + 0x4c], eax
mov ecx, dword [esp + 0x4c]
mov eax, dword [esp + 0x4c]
cmp eax, 0x100
mov eax, 0xc1bf8e1e
mov edx, 0xd86983f5
cmovne eax, edx
cmp ecx, 0x40
mov ecx, 0xc1bf8e1e
cmove eax, ecx
jmp 0x10053bd7
movsd xmm0, qword [esp + 0xc0]
lea eax, [esp + 0x118]
movsd qword [eax], xmm0
jmp 0x1005449c
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x128]
cmp byte [ecx + eax], 0x30
mov eax, 0xeda46e1c
mov ecx, 0xa92d6836
cmove eax, ecx
jmp 0x100542b9
movzx eax, byte [esp + 0x30]
and eax, 1
mov dword [esp + 0x18], eax
mov eax, dword [ebx + 0x14]
not eax
test eax, 0x3000
mov eax, 0xcf259816
mov ecx, 0xf4131373
cmove eax, ecx
jmp 0x10053bd7
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x50]
movsx eax, byte [eax]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x38]
cmp eax, 0x7f
mov eax, 0xa6772f79
mov ecx, 0x72c79f77
cmove eax, ecx
jmp 0x10053bd7
mov eax, dword [esp + 0x18]
add eax, 2
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0x68]
cmp eax, dword [esp + 0x12c]
mov eax, 0x8617bf5a
mov ecx, 0xeda46e1c
cmova eax, ecx
mov dword [esp + 0x28], 0x100be3fb
jmp 0x100542d0
mov dword [esp + 0x28], 0x100be40e
mov eax, 0xeda46e1c
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x24], ecx
jmp 0x10053bd7
lea eax, [esp + 0x118]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov eax, dword [esp + 0x54]
mov dword [esp + 0xc4], edx
mov dword [esp + 0xc0], ecx
mov ecx, 0x913d318c
cmp ecx, 0x38c07aae
je 0x10054334
cmp ecx, 0xb2688834
je 0x10054433
cmp ecx, 0x913d318c
jne 0x10054300
mov dword [esp + 0x2c], eax
cmp dword [esp + 0x2c], 0
mov ecx, 0x38c07aae
mov edx, 0xb2688834
cmove ecx, edx
jmp 0x10054300
movsx eax, byte [esp + 0x124]
mov dword [esp], eax
mov ecx, edi
call fcn.10053530
sub esp, 4
mov eax, dword [esp + 0x2c]
dec eax
jmp 0x100542fb
lea ecx, [esp + 0xe0]
call fcn.10007c1e
lea esi, [esp + 0x118]
movsd xmm0, qword [esi]
movsd qword [esp + 0xa4], xmm0
mov ecx, dword [esp + 0x20]
movsd xmm0, qword [esp + 0xa4]
movsd qword [esp + 8], xmm0
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], eax
mov dword [esp + 4], edi
mov eax, dword [esp + 0x110]
mov dword [esp], eax
call fcn.10052b92
movsd xmm0, qword [esp + 0xc0]
movsd qword [esi], xmm0
mov eax, 0x36f1298b
mov esi, dword [esp + 0x54]
jmp 0x10053bd7
mov eax, dword [esp + 0x4c]
cmp eax, 0x100
mov eax, 0x74219e6e
mov ecx, 0x334fc7a1
cmove eax, ecx
jmp 0x10053bd7
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x90]
mov dword [esp + 0x3c], ecx
cmp eax, dword [esp + 0x12c]
je 0x100543f4
mov eax, dword [esp + 0x34]
mov dword [esp + 0x3c], eax
lea ecx, [esp + 0xc8]
call fcn.10007bca
mov dword [esp + 0x5c], eax
mov eax, 0xefbc18fe
jmp 0x10053bd7
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x80]
sub ecx, eax
mov eax, dword [esp + 0x38]
cmp eax, ecx
mov eax, 0x72c79f77
mov ecx, 0x788d9eeb
cmovb eax, ecx
jmp 0x10053bd7
mov ebp, dword [esp + 0xc0]
mov ebx, dword [esp + 0xc4]
lea esi, [esp + 0x118]
mov dword [esi + 4], ebx
mov dword [esi], ebp
lea ecx, [esp + 0xe0]
call fcn.10007c1e
mov dword [esp + 0xb8], ebx
mov ebx, dword [esp + 0x120]
mov dword [esp + 0xb4], ebp
mov ecx, dword [esp + 0x20]
movsd xmm0, qword [esp + 0xb4]
movsd qword [esp + 8], xmm0
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], eax
mov dword [esp + 4], esi
mov eax, dword [esp + 0x110]
mov dword [esp], eax
call fcn.10052b92
xor esi, esi
mov eax, 0x36f1298b
jmp 0x10053bd7
cmp eax, 0x36f1298b
jne 0x10053bd7
mov edi, dword [esp + 0x48]
sub edi, dword [esp + 0x20]
mov ebp, ebx
mov ebx, dword [esp + 0x20]
lea ecx, [esp + 0xe0]
call fcn.10007c1e
add eax, ebx
lea ecx, [esp + 0x118]
mov ebx, esi
mov esi, ecx
movsd xmm0, qword [ecx]
movsd qword [esp + 0x9c], xmm0
movsd xmm0, qword [esp + 0x9c]
movsd qword [esp + 8], xmm0
mov dword [esp + 0x14], edi
mov dword [esp + 0x10], eax
lea eax, [esp + 0xc0]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x110]
mov dword [esp], eax
call fcn.10052b92
mov eax, dword [esp + 0xc0]
mov ecx, dword [esp + 0xc4]
mov dword [esi + 4], ecx
mov dword [esi], eax
xor edx, edx
mov dword [ebp + 0x24], edx
mov dword [ebp + 0x20], edx
mov dword [esp + 0x98], ecx
mov dword [esp + 0x94], eax
movsd xmm0, qword [esp + 0x94]
movsd qword [esp + 8], xmm0
mov dword [esp + 0x14], ebx
movsx eax, byte [esp + 0x124]
mov dword [esp + 0x10], eax
mov edi, dword [esp + 0x114]
mov dword [esp + 4], edi
mov eax, dword [esp + 0x110]
mov dword [esp], eax
call fcn.10052b28
lea ecx, [esp + 0xc8]
call fcn.100087f0
mov eax, dword [esp + 0x74]
lea ecx, [esp + 0xe0]
call fcn.100087f0
mov eax, dword [esp + 0x70]
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0xf8]
xor ecx, esp
call fcn.100879aa
mov eax, edi
add esp, 0xfc
pop esi
pop edi
pop ebx
pop ebp
ret