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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0xc0
mov ecx, dword [ebp + 0x10]
mov esi, dword [ebp + 8]
mov eax, dword [ebp + 0x18]
mov dword [esp + 0xb0], eax
call fcn.10040ffc
mov dword [esp + 0xb4], eax
cmp dword [ebp + 0x1c], 0
mov eax, 0x3be8c1dc
mov ecx, 0x579d09d8
cmovne ecx, eax
mov dword [esp + 0x18], ecx
mov ecx, 0xad593598
mov byte [esp + 0x1f], al
mov edi, 0x8aba9380
mov dword [esp + 0x30], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], eax
jmp 0x1003ade0
cmp ebx, 3
mov ecx, 0x95b3b194
cmova ecx, edi
nop word [eax + eax]
cmp ecx, 0x7ae1bc80
jg 0x1003ae90
cmp ecx, 0x6f82775c
jg 0x1003aeb0
cmp ecx, 0x6e7783ac
jg 0x1003aedd
cmp ecx, 0x6b801b23
jg 0x1003af04
cmp ecx, 0x5ad371ea
jg 0x1003af1a
cmp ecx, 0x579d09d7
jg 0x1003af51
cmp ecx, 0x4fe669a5
jg 0x1003af7a
cmp ecx, 0x4a042ec6
jg 0x1003afa3
cmp ecx, 0x486507b5
jg 0x1003afda
cmp ecx, 0x42c7f334
jg 0x1003affb
cmp ecx, 0x3ef0014a
jg 0x1003b01e
cmp ecx, 0x81020870
jg 0x1003b061
cmp ecx, 0x80254ad9
jne 0x1003ade0
mov byte [esp + ebx + 0x3c], 0
mov ecx, 0xf2322372
jmp 0x1003ade0
cmp ecx, 0x7ae1bc81
jne 0x1003ade0
jmp 0x1003adcf
cmp ecx, 0x6f82775d
jne 0x1003ade0
mov eax, dword [esp + 0xb8]
mov ecx, 0x2787ef89
cmp eax, 0x20000
jl 0x1003ade0
mov ecx, 0x1e9f76e3
jmp 0x1003ade0
cmp ecx, 0x6e7783ad
jne 0x1003ade0
mov ecx, esi
call fcn.10040f1e
test eax, eax
mov ecx, 0x6a6299f
mov eax, 0x6b801b24
cmovne ecx, eax
jmp 0x1003ade0
cmp ecx, 0x6b801b24
jne 0x1003ade0
mov ecx, 0x386ff8d2
jmp 0x1003ade0
cmp ecx, 0x5ad371eb
jne 0x1003ade0
mov dword [esp], 0
lea ecx, [esp + 0x78]
call fcn.10039cae
sub esp, 4
mov ecx, dword [ebp + 0x1c]
mov edx, eax
call fcn.10041010
mov dword [esp + 0x38], eax
mov ecx, 0xb676543b
jmp 0x1003ade0
cmp ecx, 0x579d09d8
jne 0x1003ade0
mov eax, dword [ebp + 0x14]
mov eax, dword [eax]
mov ecx, 0x30000
and eax, ecx
mov dword [esp + 0xb8], eax
mov ecx, 0x6f82775d
jmp 0x1003ade0
cmp ecx, 0x4fe669a6
jne 0x1003ade0
lea ecx, [esp + 0x78]
call fcn.10040e7c
test eax, eax
mov ecx, 0x944437
mov eax, 0xfded9b9a
cmovne ecx, eax
jmp 0x1003ade0
cmp ecx, 0x4a042ec7
jne 0x1003ade0
mov dword [esp], 0
lea ecx, [esp + 0x78]
call fcn.10039cae
sub esp, 4
mov ecx, dword [ebp + 0x1c]
mov edx, eax
call fcn.10041010
mov dword [esp + 0x34], eax
mov ecx, 0x823af6d9
jmp 0x1003ade0
cmp ecx, 0x486507b6
jne 0x1003ade0
cmp ebx, 2
mov ecx, 0x7ae1bc81
mov eax, 0xcbfe6e33
cmova ecx, eax
jmp 0x1003ade0
cmp ecx, 0x42c7f335
jne 0x1003ade0
cmp dword [esp + 0x2c], 0x3f
mov ecx, 0xc2d3a046
mov eax, 0xc878e084
cmova ecx, eax
jmp 0x1003ade0
cmp ecx, 0x3ef0014b
jne 0x1003ade0
mov ecx, dword [ebp + 0x10]
call fcn.10040f1e
mov ecx, dword [ebp + 0x14]
or eax, dword [ecx]
mov dword [ecx], eax
mov dword [esp], eax
mov ecx, esi
call fcn.10040ece
sub esp, 4
mov ecx, esi
call fcn.10040d82
test al, 0x80
mov ecx, 0xb736f614
mov eax, 0xbfa490de
cmovne ecx, eax
jmp 0x1003ade0
cmp ecx, 0x823af6d8
jg 0x1003b0a0
cmp ecx, 0x81020871
jne 0x1003ade0
mov dword [esp], 0
lea ecx, [esp + 0x78]
call fcn.10039cae
sub esp, 4
mov ecx, dword [ebp + 0x1c]
mov edx, eax
call fcn.10041010
mov dword [esp + 0x28], eax
mov ecx, 0x150786c0
jmp 0x1003ade0
cmp ecx, 0x8aba937f
jg 0x1003b0d3
cmp ecx, 0x823af6d9
jne 0x1003ade0
cmp dword [esp + 0x24], 0x3f
mov ecx, 0x42c7f335
mov eax, 0xc878e084
cmova ecx, eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x2c], eax
jmp 0x1003ade0
cmp ecx, 0x8fa774b7
jg 0x1003b112
cmp ecx, 0x8aba9380
jne 0x1003ade0
movzx eax, byte [esp + 0x3e]
and eax, 3
shl eax, 6
movzx ecx, byte [esp + 0x3f]
add ecx, eax
mov dword [esp], ecx
lea ecx, [esp + 0x40]
call fcn.100399de
sub esp, 4
mov ecx, 0x95b3b194
jmp 0x1003ade0
cmp ecx, 0x948a929d
jg 0x1003b143
cmp ecx, 0x8fa774b8
jne 0x1003ade0
lea ecx, [esp + 0x78]
call fcn.10040e7c
test eax, eax
mov ecx, 0x80254ad9
mov eax, 0x97b267e8
cmovne ecx, eax
jmp 0x1003ade0
cmp ecx, 0x95b3b193
jg 0x1003b176
cmp ecx, 0x948a929e
jne 0x1003ade0
mov dword [esp], 0
lea ecx, [esp + 0x78]
call fcn.10039cae
sub esp, 4
mov ecx, dword [esp + 0x20]
mov al, byte [ecx + eax]
jmp 0x1003af43
cmp ecx, 0x97b267e7
jg 0x1003b194
cmp ecx, 0x95b3b194
jne 0x1003ade0
mov ecx, 0x2b948b5
jmp 0x1003ade0
cmp ecx, 0x99c033c9
jg 0x1003b1b2
cmp ecx, 0x97b267e8
jne 0x1003ade0
mov ecx, 0x2b948b5
jmp 0x1003ade0
cmp ecx, 0x9eac9694
jg 0x1003b1d8
cmp ecx, 0x99c033ca
jne 0x1003ade0
mov ecx, 0xb9435d56
mov dword [esp + 0x20], 0x1022bda0
jmp 0x1003ade0
cmp ecx, 0xa7578ab1
jg 0x1003b1f8
cmp ecx, 0x9eac9695
jne 0x1003ade0
mov ecx, 0x4fe669a6
xor ebx, ebx
jmp 0x1003ade0
cmp ecx, 0x3be8c1db
jg 0x1003b38c
cmp ecx, 0x3b1cc9ae
jg 0x1003b3b1
cmp ecx, 0x398596d4
jg 0x1003b3dd
cmp ecx, 0x386ff8d1
jg 0x1003b414
cmp ecx, 0x2787ef88
jg 0x1003b488
cmp ecx, 0x1e9f76e2
jg 0x1003b4b5
cmp ecx, 0x150786bf
jg 0x1003b4e2
cmp ecx, 0xd43c2b1
jg 0x1003b50d
cmp ecx, 0x6a6299e
jg 0x1003b51e
cmp ecx, 0x2b948b4
jg 0x1003b546
cmp ecx, 0x944436
jg 0x1003b55f
cmp ecx, 0xfded9b99
jg 0x1003b5a4
cmp ecx, 0xf89bff6b
jg 0x1003b5c7
cmp ecx, 0xf2322371
jg 0x1003b601
cmp ecx, 0xf0f7accd
jg 0x1003b622
cmp ecx, 0xe726b9db
jg 0x1003b640
cmp ecx, 0xe469c287
jg 0x1003b65e
cmp ecx, 0xe4356505
jg 0x1003b674
cmp ecx, 0xe28060b6
jg 0x1003b692
cmp ecx, 0xcbfe6e32
jg 0x1003b6a8
cmp ecx, 0xc878e083
jg 0x1003b6e5
cmp ecx, 0xc81a900f
jg 0x1003b703
cmp ecx, 0xc2d3a045
jg 0x1003b726
cmp ecx, 0xc298715c
jg 0x1003b794
cmp ecx, 0xbfa490dd
jg 0x1003b7b2
cmp ecx, 0xb9435d55
jg 0x1003b7e9
cmp ecx, 0xb736f613
jg 0x1003b7ff
cmp ecx, 0xb676543a
jg 0x1003b82a
cmp ecx, 0xb4883e88
jg 0x1003b85a
cmp ecx, 0xa7578ab2
je 0x1003b87b
cmp ecx, 0xa77456aa
jne 0x1003b897
mov dword [esp], 0
lea ecx, [esp + 0x78]
call fcn.10039cae
sub esp, 4
mov ecx, dword [esp + 0x20]
movzx eax, byte [ecx + eax]
jmp 0x1003afcc
cmp ecx, 0x3be8c1dc
jne 0x1003ade0
mov eax, dword [ebp + 0x14]
test byte [eax + 2], 2
mov ecx, 0x9eac9695
mov eax, 0xc81a9010
cmovne ecx, eax
jmp 0x1003ade0
cmp ecx, 0x3b1cc9af
jne 0x1003ade0
mov dword [esp], 0
lea ecx, [esp + 0x78]
call fcn.10039cae
sub esp, 4
mov ecx, dword [esp + 0x20]
movzx eax, byte [ecx + eax]
jmp 0x1003b092
cmp ecx, 0x398596d5
jne 0x1003ade0
movzx eax, byte [esp + 0x1f]
mov ecx, dword [ebp + 0x14]
mov edx, dword [ecx]
mov dword [esp], eax
lea ecx, [esp + 0xb0]
call fcn.10041110
sub esp, 4
mov byte [esp + ebx + 0x3c], al
inc ebx
mov ecx, 0xb4883e89
jmp 0x1003ade0
cmp ecx, 0x386ff8d2
jne 0x1003ade0
mov eax, dword [ebp + 0x14]
mov ecx, dword [eax]
and ecx, 0x800000
mov eax, 0x800001
cmovne ecx, eax
mov dword [esp + 0x20], ecx
mov eax, dword [ebp + 0x10]
mov dword [esp + 4], eax
mov dword [esp + 8], 0
mov dword [esp], 1
lea ecx, [esp + 0x78]
call fcn.10040d90
sub esp, 0xc
mov eax, dword [ebp + 0xc]
mov dword [esp + 8], eax
mov dword [esp + 4], esi
mov eax, dword [esp + 0x20]
mov dword [esp], eax
lea ecx, [esp + 0x40]
call fcn.10040d90
sub esp, 0xc
mov dword [esp + 0x20], 0
mov ecx, dword [esp + 0x18]
jmp 0x1003ade0
cmp ecx, 0x2787ef89
jne 0x1003ade0
mov eax, dword [esp + 0xb8]
mov ecx, 0x99c033ca
cmp eax, 0x10000
je 0x1003ade0
mov ecx, 0xe469c288
jmp 0x1003ade0
cmp ecx, 0x1e9f76e3
jne 0x1003ade0
mov eax, dword [esp + 0xb8]
mov ecx, 0xe726b9dc
cmp eax, 0x20000
je 0x1003ade0
mov ecx, 0xe469c288
jmp 0x1003ade0
cmp ecx, 0x150786c0
jne 0x1003ade0
cmp dword [esp + 0x20], 0
mov ecx, 0x4a042ec7
mov eax, 0xa77456aa
cmovne ecx, eax
mov eax, dword [esp + 0x28]
mov dword [esp + 0x24], eax
jmp 0x1003ade0
cmp ecx, 0xd43c2b2
jne 0x1003ade0
jmp 0x1003b8c0
cmp ecx, 0x6a6299f
jne 0x1003ade0
mov eax, dword [ebp + 0x14]
mov eax, dword [eax]
mov dword [esp], eax
mov ecx, esi
call fcn.10040edc
sub esp, 4
mov ecx, 0x6b801b24
jmp 0x1003ade0
cmp ecx, 0x2b948b5
jne 0x1003ade0
and ebx, 3
mov ecx, 0x4fe669a6
jmp 0x1003ade0
cmp ecx, 0x944437
jne 0x1003ade0
lea eax, [esp + 0x40]
mov ecx, eax
call fcn.10040f2a
mov ecx, dword [eax + 8]
mov edx, dword [ebp + 0x14]
mov dword [edx + 8], ecx
movsd xmm0, qword [eax]
movsd qword [edx], xmm0
lea ecx, [esp + 0x40]
call fcn.10039e96
test al, al
mov ecx, 0xf0f7acce
mov eax, 0xc298715d
cmovne ecx, eax
jmp 0x1003ade0
cmp ecx, 0xfded9b9a
jne 0x1003ade0
cmp dword [esp + 0x20], 0
mov ecx, 0x5ad371eb
mov eax, 0x948a929e
cmovne ecx, eax
jmp 0x1003ade0
cmp ecx, 0xf89bff6c
jne 0x1003ade0
movzx eax, byte [esp + 0x3c]
shl eax, 2
movzx ecx, byte [esp + 0x3d]
shr ecx, 4
and ecx, 3
add ecx, eax
mov dword [esp], ecx
lea ecx, [esp + 0x40]
call fcn.100399de
sub esp, 4
mov ecx, 0x486507b6
jmp 0x1003ade0
cmp ecx, 0xf2322372
jne 0x1003ade0
cmp ebx, 1
mov ecx, 0x486507b6
mov eax, 0xf89bff6c
cmova ecx, eax
jmp 0x1003ade0
cmp ecx, 0xf0f7acce
jne 0x1003ade0
mov ecx, 0xe28060b7
mov dword [esp + 0x30], 0xfffffffc
jmp 0x1003ade0
cmp ecx, 0xe726b9dc
jne 0x1003ade0
mov ecx, 0xb9435d56
mov dword [esp + 0x20], 0x1022bea0
jmp 0x1003ade0
cmp ecx, 0xe469c288
jne 0x1003ade0
mov ecx, 0xb9435d56
jmp 0x1003ade0
cmp ecx, 0xe4356506
jne 0x1003ade0
mov ecx, 0xd43c2b2
mov dword [esp + 0x30], 0xfffffffd
jmp 0x1003ade0
cmp ecx, 0xe28060b7
jne 0x1003ade0
mov ecx, 0xd43c2b2
jmp 0x1003ade0
cmp ecx, 0xcbfe6e33
jne 0x1003ade0
movzx eax, byte [esp + 0x3d]
and eax, 0xf
shl eax, 4
movzx ecx, byte [esp + 0x3e]
shr ecx, 2
and ecx, 0xf
add ecx, eax
mov dword [esp], ecx
lea ecx, [esp + 0x40]
call fcn.100399de
sub esp, 4
mov ecx, 0x7ae1bc81
jmp 0x1003ade0
cmp ecx, 0xc878e084
jne 0x1003ade0
mov ecx, 0xe28060b7
mov dword [esp + 0x30], 0xfffffffd
jmp 0x1003ade0
cmp ecx, 0xc81a9010
jne 0x1003ade0
cmp dword [esp + 0x20], 0
mov ecx, 0x81020871
mov eax, 0x3b1cc9af
cmovne ecx, eax
jmp 0x1003ade0
cmp ecx, 0xc2d3a046
jne 0x1003ade0
mov eax, dword [ebp + 0x14]
mov edx, dword [eax]
mov eax, dword [esp + 0x24]
mov dword [esp], eax
lea eax, [esp + 0xb0]
mov ecx, eax
call fcn.10041110
sub esp, 4
mov eax, dword [ebp + 0x14]
mov edx, dword [eax]
mov eax, dword [esp + 0x2c]
mov dword [esp], eax
lea ecx, [esp + 0xb0]
call fcn.10041110
sub esp, 4
mov ecx, dword [esp + 0xb0]
mov dword [esp + 0x14], ecx
mov edx, 0x10
call fcn.10040ff0
xor eax, dword [esp + 0x14]
mov dword [esp + 0xb0], eax
mov ecx, 0x9eac9695
jmp 0x1003ade0
cmp ecx, 0xc298715d
jne 0x1003ade0
mov ecx, 0xe28060b7
mov dword [esp + 0x30], 0
jmp 0x1003ade0
cmp ecx, 0xbfa490de
jne 0x1003ade0
mov eax, dword [ebp + 0x14]
mov eax, dword [eax]
mov ecx, eax
and ecx, 3
add ecx, 0x80
mov dword [esp + 4], eax
mov dword [esp], ecx
mov ecx, esi
call fcn.10040eea
sub esp, 8
mov ecx, 0x386ff8d2
jmp 0x1003ade0
cmp ecx, 0xb9435d56
jne 0x1003ade0
mov ecx, 0x3be8c1dc
jmp 0x1003ade0
cmp ecx, 0xb736f614
jne 0x1003ade0
mov ecx, esi
call fcn.10040ec6
mov ecx, 0x6e7783ad
cmp dword [eax], 0
jne 0x1003ade0
mov ecx, 0x6a6299f
jmp 0x1003ade0
cmp ecx, 0xb676543b
jne 0x1003ade0
mov edx, dword [esp + 0x38]
movzx eax, dl
cmp eax, 0xff
mov ecx, 0xb4883e89
mov eax, 0x398596d5
cmovne ecx, eax
mov al, dl
mov byte [esp + 0x1f], al
jmp 0x1003ade0
cmp ecx, 0xb4883e89
jne 0x1003ade0
cmp ebx, 4
mov ecx, 0xf2322372
mov eax, 0x8fa774b8
cmovne ecx, eax
jmp 0x1003ade0
mov ecx, dword [ebp + 0x10]
call fcn.10041004
test eax, eax
mov ecx, 0xe4356506
mov eax, 0x3ef0014b
cmovne ecx, eax
jmp 0x1003ade0
cmp ecx, 0xad593598
jne 0x1003ade0
mov ecx, 0xa7578ab2
cmp dword [esp + 0xb4], 0
jne 0x1003ade0
mov ecx, 0xe4356506
jmp 0x1003ade0
mov eax, dword [esp + 0x30]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret