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

Disassembly:
sub esp, 0x190
mov edx, dword [esp + 0x1ac]
push ebx
push ebp
mov ebp, dword [esp + 0x19c]
xor ecx, ecx
push esi
mov eax, dword [ebp]
push edi
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], ecx
mov dword [esp + 0x14], ecx
mov dword [esp + 0x34], ecx
mov dword [esp + 0x38], ecx
mov dword [esp + 0x18], ecx
mov dword [esp + 0x3c], ecx
mov ecx, 0xc
mov esi, edx
lea edi, [esp + 0x88]
rep movsd dword es:[edi], dword [esi]
mov ebx, dword [esp + 0x1a8]
mov ecx, 0xc
mov esi, edx
lea edi, [esp + 0x110]
rep movsd dword es:[edi], dword [esi]
mov cx, word [eax]
cmp cx, 0xa
jne 0x49a01f
add eax, 4
push ebx
mov dword [esp + 0x24], eax
call fcn.00499f10
add esp, 4
mov dword [esp + 0x3c], eax
jmp 0x49a032
cmp cx, 9
je 0x49a02b
cmp cx, 0xb
jne 0x49a032
add eax, 4
mov dword [esp + 0x20], eax
mov ecx, 0xa
xor eax, eax
lea edi, [esp + 0xb8]
rep stosd dword es:[edi], eax
mov ecx, dword [esp + 0x20]
mov eax, dword [ebp + 0x14]
add ecx, 4
mov dword [esp + 0xcc], eax
mov ebp, dword [ecx]
mov dword [esp + 0x24], ebp
mov edi, dword [ecx + 4]
mov dword [esp + 0x28], edi
mov esi, dword [ecx + 8]
mov dword [esp + 0x2c], esi
mov ax, word [esp + 0x2e]
mov edx, dword [ecx + 0xc]
test si, si
mov dword [esp + 0x30], edx
jne 0x49a07d
test ax, ax
je 0x49a0c5
fild dword [esp + 0x28]
movsx eax, ax
mov dword [esp + 0x10], eax
sub esp, 8
fild dword [esp + 0x18]
movsx ecx, si
fmulp st(1)
mov dword [esp + 0x18], ecx
sub esp, 8
lea edx, [esp + 0x120]
fmul qword [0x51cf18]
fstp qword [esp + 8]
fild dword [esp + 0x34]
fild dword [esp + 0x20]
fmulp st(1)
fmul qword [0x51cf18]
fstp qword [esp]
push edx
call sub.CRLUTL110.dll__UTLPreciseTranslateMatrix_20
lea eax, [esp + 0x38]
lea ecx, [esp + 0x34]
push eax
lea edx, [esp + 0x18]
push ecx
lea eax, [esp + 0x148]
push edx
lea ecx, [esp + 0x17c]
push eax
lea edx, [esp + 0x98]
push ecx
mov ecx, dword [esp + 0x1cc]
lea eax, [esp + 0x124]
push edx
push eax
push ecx
push ebx
mov eax, dword [esp + 0x54]
sub esp, 0x10
mov edx, esp
mov dword [edx], ebp
mov dword [edx + 4], edi
mov dword [edx + 8], esi
mov dword [edx + 0xc], eax
call fcn.00496ea0
add esp, 0x34
test eax, eax
jne 0x49a134
mov esi, dword [esp + 0x1c]
mov ebp, dword [esp + 0x18]
mov dword [esp + 0x10], 0xc9
xor edi, edi
jmp 0x49a305
mov eax, dword [esp + 0x1b4]
mov edx, dword [esp + 0x1b0]
mov ecx, dword [esp + 0x1ac]
xor edi, edi
push edi
mov dword [esp + 0x50], eax
push edi
mov dword [esp + 0x50], edx
mov edx, dword [ebx]
push 1
lea eax, [esp + 0x4c]
mov dword [esp + 0x50], ecx
push 1
push eax
mov ecx, ebx
mov dword [esp + 0x54], 4
call dword [edx + 0x58]
cmp eax, edi
mov dword [esp + 0x10], eax
jne 0x49a2fd
mov eax, dword [esp + 0x14]
cmp eax, edi
je 0x49a2e3
jmp 0x49a18d
xor edi, edi
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x34]
push ecx
lea ecx, [esp + 0x144]
push edx
push ecx
lea edx, [esp + 0x17c]
lea ecx, [esp + 0x94]
push edx
push ecx
lea edx, [esp + 0x38]
mov esi, dword [esp + 0x34]
lea ecx, [esp + 0x7c]
push edx
push ecx
lea edx, [esp + 0x74]
lea ecx, [esp + 0x94]
push edx
mov edx, dword [esp + 0x1d8]
push ecx
push eax
push edx
push ebx
push esi
call fcn.00497b20
add esp, 0x34
test eax, eax
je 0x49a2f5
lea eax, [esp + 0x58]
lea ecx, [esp + 0x78]
push eax
push ecx
push ebx
push esi
call fcn.004990b0
mov esi, eax
add esp, 0x10
cmp esi, edi
je 0x49a353
push edi
push esi
call fcn.00425a40
mov ebp, eax
cmp ebp, edi
je 0x49a339
mov eax, dword [esp + 0x24]
mov edx, dword [esp + 0x30]
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x1c], edi
mov dword [esp + 0x24], edi
mov dword [esp + 0x30], edi
mov edi, dword [esp + 0x28]
sub ecx, eax
sub edi, edx
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x28], edi
push edx
mov ecx, 0xc
lea esi, [esp + 0x8c]
lea edi, [esp + 0xe4]
lea edx, [esp + 0xe4]
push eax
push edx
rep movsd dword es:[edi], dword [esi]
call sub.CRLUTL110.dll__UTLTranslateMatrix_12
mov esi, dword [esp + 0x3c]
test esi, esi
je 0x49a274
mov eax, dword [ebx]
push 0
mov ecx, ebx
call dword [eax + 0x180]
mov edx, dword [ebx]
lea eax, [esp + 0x68]
push 0
lea ecx, [esp + 0x28]
push eax
push ecx
lea eax, [esp + 0xec]
lea ecx, [esp + 0x30]
push eax
push ecx
push 5
lea eax, [esp + 0xd0]
push ebp
push eax
mov ecx, ebx
call dword [edx + 0x3c]
test esi, esi
mov edi, eax
je 0x49a2b1
mov edx, dword [ebx]
push 1
mov ecx, ebx
call dword [edx + 0x180]
test edi, edi
jne 0x49a343
push ebp
call fcn.00426320
mov eax, dword [esp + 0x14]
mov dword [esp + 0x18], edi
push eax
mov ecx, dword [eax + 0x14]
mov dword [esp + 0x18], ecx
call fcn.0049a870
mov eax, dword [esp + 0x18]
add esp, 4
test eax, eax
jne 0x49a18b
mov edx, dword [ebx]
mov ecx, ebx
call dword [edx + 0x5c]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x190
ret
mov dword [esp + 0x10], 0xc9
mov esi, dword [esp + 0x1c]
mov ebp, dword [esp + 0x18]
mov eax, dword [esp + 0x14]
cmp eax, edi
je 0x49a316
push eax
call fcn.0049a850
add esp, 4
cmp esi, edi
je 0x49a320
push esi
call sub.CDRRIP110.dll_RIPDestroyImage
cmp ebp, edi
je 0x49a32a
push ebp
call fcn.00426320
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x190
ret
mov dword [esp + 0x10], 0xc9
jmp 0x49a305
mov esi, dword [esp + 0x1c]
mov dword [esp + 0x10], 0xc9
xor edi, edi
jmp 0x49a305
mov dword [esp + 0x10], 0xc9
jmp 0x49a301