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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x104
mov dword [esp], ecx
mov ecx, edx
mov esi, edx
call 0x4ba016
pop ebx
call fcn.004b9bb2
cmp eax, 0x5c
mov dword [esp + 0x9c], eax
jne 0x4baadc
mov edi, dword [esi]
mov ecx, esi
mov eax, dword [edi + 0x58]
lea ebp, [edi + 0x50]
mov dword [esp + 0x28], eax
movsd xmm0, qword [edi + 0x50]
movsd qword [esp + 0x20], xmm0
call fcn.004b9f28
test al, al
je 0x4ba0c1
mov ecx, esi
mov dword [esp + 4], ebp
call fcn.004b9bb2
mov ebp, eax
and eax, 0x1ffff8
cmp eax, 0x30
jne 0x4ba0ef
cmp byte [edi + 0x65], 0
je 0x4ba17b
lea edi, [esp + 0x38]
mov edx, esi
mov ecx, edi
call fcn.004bfec0
mov eax, dword [esp + 0x28]
movsd xmm0, qword [esp + 0x20]
mov dword [edi + 0xc], eax
movsd qword [edi + 4], xmm0
mov eax, dword [esp]
movsd xmm1, qword [edi + 0x18]
movsd xmm0, qword [edi + 0x10]
movsd xmm2, qword [edi + 8]
movsd qword [eax + 0x1c], xmm1
movsd xmm1, qword [edi]
movsd qword [eax + 0x14], xmm0
movsd qword [eax + 0xc], xmm2
movsd qword [eax + 4], xmm1
jmp 0x4ba16f
mov ecx, dword [ebp + 8]
lea eax, [esp + 0xec]
movsd xmm1, qword [esp + 0x20]
lea edi, [esp + 0x9c]
mov dword [eax + 0x14], ecx
mov ecx, dword [esp + 0x28]
movsd xmm0, qword [ebp]
mov dword [edi], 0xa
jmp 0x4ba1b4
mov eax, ebp
and eax, 0x1ffffe
cmp eax, 0x38
jne 0x4ba1eb
cmp byte [edi + 0x65], 0
je 0x4ba17b
mov ecx, esi
call fcn.004b9f28
mov ecx, dword [esp + 4]
movsd xmm1, qword [esp + 0x20]
mov eax, dword [ecx + 8]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x28]
movsd xmm0, qword [ecx]
mov ecx, ebp
movsd qword [esp + 0x14], xmm0
movsd qword [esp + 8], xmm1
mov dword [esp + 0x10], eax
call fcn.004bf5d7
test al, al
je 0x4ba2c4
mov eax, dword [esp]
movsd xmm0, qword [esp + 0x18]
movsd xmm2, qword [esp + 8]
movsd xmm1, qword [esp + 0x10]
movsd qword [eax + 0x18], xmm0
movsd qword [eax + 0x10], xmm1
movsd qword [eax + 8], xmm2
mov dword [eax + 4], ebp
mov byte [eax + 0x20], 1
mov byte [eax + 0x38], 2
mov dword [eax], 0x22
jmp 0x4ba1e0
lea edi, [esp + 0xec]
mov edx, esi
mov ecx, edi
call fcn.004b9e82
mov ecx, dword [edi + 0x14]
lea eax, [esp + 0x84]
movsd xmm0, qword [edi + 0xc]
movsd xmm1, qword [esp + 0x20]
lea edi, [esp + 0x9c]
mov dword [edi], 0x20
mov dword [eax + 0x14], ecx
mov ecx, dword [esp + 0x28]
movsd qword [eax + 0xc], xmm0
movsd qword [eax], xmm1
mov dword [eax + 8], ecx
mov edx, dword [esi + 4]
lea ebp, [esp + 0x38]
mov ecx, ebp
push edi
push eax
push dword [esi + 8]
call fcn.004bc830
add esp, 0xc
push 0x10
pop ecx
mov edi, dword [esp]
mov esi, ebp
rep movsd dword es:[edi], dword [esi]
add esp, 0x104
pop esi
pop edi
pop ebx
pop ebp
ret
lea eax, [ebp - 0x70]
cmp eax, 8
jbe 0x4ba20a
lea eax, [ebp - 0x50]
cmp eax, 7
ja 0x4ba375
mov eax, dword [eax*4 + 0x4bab1c]
add eax, ebx
jmp eax
mov eax, dword [eax*4 + 0x4bab3c]
add eax, ebx
jmp eax
mov edx, dword [esp]
cmp ebp, 0x7f
ja 0x4ba321
lea eax, [ebp - 0x30]
cmp eax, 0xa
jb 0x4ba321
lea eax, [ebp - 0x41]
cmp eax, 0x1a
jb 0x4ba321
lea eax, [ebp - 0x61]
cmp eax, 0x1a
jb 0x4ba321
mov eax, ebp
and eax, 0x1ffffd
cmp eax, 0x3c
je 0x4ba321
movsd xmm0, qword [esp + 0x18]
movsd xmm2, qword [esp + 8]
movsd xmm1, qword [esp + 0x10]
mov al, 2
movsd qword [edx + 0x18], xmm0
movsd qword [edx + 0x10], xmm1
movsd qword [edx + 8], xmm2
mov dword [edx + 4], ebp
mov byte [edx + 0x20], al
mov byte [edx + 0x38], al
jmp 0x4ba851
lea eax, [ebp - 0x3c]
cmp eax, 6
jbe 0x4ba4d3
lea eax, [ebp - 0x72]
cmp eax, 8
ja 0x4ba506
add ebx, dword [eax*4 + 0x4bab7c]
jmp ebx
cmp ebp, 0x44
je 0x4ba383
cmp ebp, 0x64
jne 0x4ba105
lea edi, [esp + 0x38]
mov edx, esi
mov ecx, edi
call fcn.004bfdf6
mov eax, dword [esp + 0x28]
movsd xmm0, qword [esp + 0x20]
mov ecx, dword [esp]
movsd xmm1, qword [edi + 0x10]
mov dword [edi + 8], eax
mov eax, dword [edi + 0x18]
movsd qword [edi], xmm0
movsd qword [ecx + 4], xmm0
movsd qword [ecx + 0x14], xmm1
movsd xmm0, qword [edi + 8]
mov dword [ecx + 0x1c], eax
movsd qword [ecx + 0xc], xmm0
mov byte [ecx + 0x38], 5
mov dword [ecx], 0x22
jmp 0x4ba1e0
add ebx, dword [eax*4 + 0x4bab60]
jmp ebx
cmp ebp, 0x61
je 0x4ba6ca
cmp ebp, 0x62
je 0x4ba6fd
cmp ebp, 0x66
je 0x4ba81f
cmp ebp, 0x6e
jne 0x4ba58a
movsd xmm0, qword [esp + 0x18]
movsd xmm2, qword [esp + 8]
movsd xmm1, qword [esp + 0x10]
movsd qword [edx + 0x18], xmm0
movsd qword [edx + 0x10], xmm1
movsd qword [edx + 8], xmm2
mov dword [edx + 4], 0xa
mov word [edx + 0x20], 0x306
jmp 0x4ba84d
mov edi, edx
mov edx, dword [esi + 4]
lea ebp, [esp + 0x38]
lea eax, [esp + 0x9c]
lea ebx, [esp + 8]
mov ecx, ebp
mov dword [eax], 0xb
push eax
push ebx
push dword [esi + 8]
call fcn.004bc830
add esp, 0xc
push 0x10
pop ecx
jmp 0x4ba1dc
movsd xmm0, qword [esp + 0x18]
movsd xmm2, qword [esp + 8]
movsd xmm1, qword [esp + 0x10]
movsd qword [edx + 0x18], xmm0
movsd qword [edx + 0x10], xmm1
movsd qword [edx + 8], xmm2
mov dword [edx + 4], 7
mov word [edx + 0x20], 6
jmp 0x4ba84d
movsd xmm0, qword [esp + 0x18]
movsd xmm2, qword [esp + 8]
movsd xmm1, qword [esp + 0x10]
mov eax, dword [esi + 8]
mov ebp, dword [esp + 4]
mov bl, 4
movsd qword [esp + 0x94], xmm0
movsd qword [esp + 0x8c], xmm1
movsd qword [esp + 0x84], xmm2
mov dword [esp + 0x2c], eax
cmp dword [ebp], eax
je 0x4ba7dc
mov ecx, esi
call fcn.004b9bb2
cmp eax, 0x7b
jne 0x4ba7d9
mov ecx, esi
call fcn.004b9bb2
cmp eax, 0x7b
mov dword [esp + 0xec], eax
jne 0x4baafe
movsd xmm0, qword [ebp]
mov ecx, esi
movsd qword [esp + 0x78], xmm0
mov eax, dword [ebp + 8]
mov dword [esp + 0x80], eax
call fcn.004bc8d1
test al, al
je 0x4ba85c
mov eax, dword [ebp + 8]
mov ecx, esi
mov dword [esp + 0xdc], eax
movsd xmm0, qword [ebp]
movsd qword [esp + 0xd4], xmm0
call fcn.004b9bb2
cmp eax, 0x2d
je 0x4ba8ae
and eax, 0x1fffdf
add eax, 0xffffffbf
cmp eax, 0x1a
jb 0x4ba8ae
mov eax, dword [esp + 0x80]
mov dword [ebp + 8], eax
movsd xmm0, qword [esp + 0x78]
movsd qword [ebp], xmm0
mov edx, dword [esp]
movsd xmm0, qword [esp + 0x94]
movsd xmm2, qword [esp + 0x84]
movsd xmm1, qword [esp + 0x8c]
movzx eax, word [esp + 0x35]
mov cl, byte [esp + 0x37]
movsd qword [edx + 0x14], xmm0
movsd qword [edx + 0xc], xmm1
movsd qword [edx + 4], xmm2
mov word [edx + 0x1d], ax
mov byte [edx + 0x1f], cl
mov byte [edx + 0x1c], bl
mov byte [edx + 0x38], 3
jmp 0x4ba851
movsd xmm0, qword [esp + 0x18]
movsd xmm2, qword [esp + 8]
movsd xmm1, qword [esp + 0x10]
movsd qword [edx + 0x18], xmm0
movsd qword [edx + 0x10], xmm1
movsd qword [edx + 8], xmm2
mov dword [edx + 4], 0xc
mov word [edx + 0x20], 0x106
mov byte [edx + 0x38], 2
mov dword [edx], 0x22
jmp 0x4ba1e0
mov ecx, dword [ebp + 8]
lea eax, [esp + 0xec]
movsd xmm1, qword [esp + 0x20]
mov edx, dword [esi + 4]
lea edi, [esp + 0x9c]
mov dword [eax + 0x14], ecx
mov ecx, dword [esp + 0x28]
movsd xmm0, qword [ebp]
mov dword [edi], 0x1e
movsd qword [eax + 0xc], xmm0
mov dword [eax + 8], ecx
movsd qword [eax], xmm1
lea ecx, [esp + 0x38]
push edi
push eax
push dword [esp + 0x34]
call fcn.004bc830
add esp, 0xc
mov edx, dword [esp]
jmp 0x4baa25
add edi, 0x40
mov edx, 0x5b102c
mov ecx, edi
call fcn.004758e4
mov ebx, dword [esp + 0x2c]
and dword [eax + 8], 0
mov ebp, eax
mov edi, edx
mov dword [esp + 0x30], edx
mov eax, dword [esp + 4]
cmp dword [eax], ebx
je 0x4ba9cc
mov ecx, esi
call fcn.004b9bb2
cmp eax, 0x2d
je 0x4ba8f2
and eax, 0x1fffdf
add eax, 0xffffffbf
cmp eax, 0x1a
jae 0x4ba90b
mov ecx, esi
call fcn.004b9bb2
mov ecx, ebp
mov edx, eax
call fcn.004b7fd0
mov ecx, esi
call fcn.004bc8d1
jmp 0x4ba8cd
mov eax, dword [esp + 4]
cmp dword [eax], ebx
je 0x4ba9cc
mov ecx, esi
call fcn.004b9bb2
cmp eax, 0x7d
jne 0x4ba9cc
mov ecx, dword [esp + 4]
mov eax, dword [ecx + 8]
mov dword [esp + 0xe8], eax
movsd xmm0, qword [ecx]
mov ecx, esi
movsd qword [esp + 0xe0], xmm0
call fcn.004b9f28
mov edi, dword [ebp]
mov ebp, dword [ebp + 8]
mov ecx, edi
mov edx, ebp
push 5
push str.startendstart_halfend_halfassertion_failed:_self.parser__.octal
call fcn.004153c1
pop ecx
pop edx
mov cl, 6
test al, al
jne 0x4ba9b3
mov ecx, edi
mov edx, ebp
push 3
push 0x5b1041
call fcn.004153c1
pop ecx
pop edx
mov cl, 7
test al, al
jne 0x4ba9b3
mov ecx, edi
mov edx, ebp
push 0xa
push 0x5b1044
call fcn.004153c1
pop ecx
pop edx
mov cl, 0xa
test al, al
jne 0x4ba9b3
mov ecx, edi
mov edx, ebp
push 8
push 0x5b104e
call fcn.004153c1
pop ecx
pop edx
mov cl, 0xb
test al, al
je 0x4baa7b
mov eax, dword [esp + 0x30]
mov edx, dword [esp]
mov ebp, dword [esp + 4]
mov byte [esp + 0x3c], cl
mov dword [esp + 0x38], 0x22
jmp 0x4baa21
mov ebp, dword [esp + 4]
lea eax, [esp + 0xec]
movsd xmm1, qword [esp + 0x78]
mov edx, dword [esi + 4]
lea edi, [esp + 0x9c]
mov ecx, dword [ebp + 8]
mov dword [eax + 0x14], ecx
mov ecx, dword [esp + 0x80]
movsd xmm0, qword [ebp]
mov dword [edi], 0x1c
movsd qword [eax + 0xc], xmm0
mov dword [eax + 8], ecx
movsd qword [eax], xmm1
lea ecx, [esp + 0x38]
push edi
push eax
push ebx
call fcn.004bc830
add esp, 0xc
mov eax, dword [esp + 0x30]
mov edx, dword [esp]
inc dword [eax]
mov bl, 4
mov esi, dword [esp + 0x38]
cmp esi, 0x22
jne 0x4baa59
mov al, byte [esp + 0x3c]
cmp al, 0xc
je 0x4ba7dc
mov ecx, dword [ebp + 8]
mov ebx, eax
mov dword [esp + 0x98], ecx
movsd xmm0, qword [ebp]
movsd qword [esp + 0x90], xmm0
jmp 0x4ba7dc
lea eax, [esp + 0x3d]
lea ecx, [edx + 5]
mov bl, byte [eax - 1]
push 0x3b
push eax
push ecx
mov edi, edx
call fcn.005669c0
add esp, 0xc
mov dword [edi], esi
mov byte [edi + 4], bl
jmp 0x4ba1e0
mov ecx, dword [esp + 0xdc]
lea eax, [esp + 0xec]
movsd xmm0, qword [esp + 0xd4]
movsd xmm1, qword [esp + 0xe0]
mov edx, dword [esi + 4]
lea ebx, [esp + 0x9c]
mov dword [ebx], 0x1d
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0xe8]
movsd qword [eax], xmm0
movsd qword [eax + 0xc], xmm1
mov dword [eax + 0x14], ecx
lea ecx, [esp + 0x38]
push ebx
push eax
push dword [esp + 0x34]
call fcn.004bc830
add esp, 0xc
mov ebp, dword [esp + 4]
jmp 0x4baa1a
lea eax, [esp + 0x38]
lea ecx, [esp + 0x9c]
mov edx, 0x5fc798
and dword [eax], 0
push 0x5b1008
push eax
call fcn.0057919c
pop eax
pop ecx
ud2
lea eax, [esp + 0x9c]
lea ecx, [esp + 0xec]
mov edx, 0x5b1018
and dword [eax], 0
push 0x5b101c
jmp 0x4baaf4