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

Disassembly:
push 0xffffffffffffffff
push 0x10050700
mov eax, dword fs:[0]
push eax
sub esp, 0x70
push ebx
push ebp
push esi
push edi
mov eax, dword [0x100682b0]
xor eax, esp
push eax
lea eax, [esp + 0x84]
mov dword fs:[0], eax
mov esi, ecx
mov dword [esp + 0x18], esi
lea eax, [esi + 0x18]
push eax
lea ecx, [esp + 0x58]
call fcn.10044e70
xor ebx, ebx
xor ebp, ebp
mov dword [esp + 0x8c], ebx
mov dword [esp + 0x74], ebp
mov dword [esp + 0x78], ebx
mov dword [esp + 0x7c], ebx
mov ecx, dword [esp + 0x98]
mov eax, dword [ecx + 4]
mov edi, dword [eax]
mov byte [esp + 0x8c], 1
mov dword [esp + 0x14], edi
cmp edi, eax
jne 0x10049118
mov esi, ebp
cmp ebp, ebx
je 0x100490ce
push esi
lea ecx, [esp + 0x50]
push ecx
mov ecx, dword [esp + 0xa0]
call fcn.10036d40
mov edx, dword [esp + 0x50]
mov eax, dword [esp + 0x4c]
push edx
push eax
lea ecx, [esp + 0x40]
push ecx
mov ecx, dword [esp + 0xa4]
call fcn.1003deb0
add esi, 4
cmp esi, ebx
jne 0x1004909a
test ebp, ebp
je 0x100490db
push ebp
call fcn.10019165
add esp, 4
lea ecx, [esp + 0x54]
mov dword [esp + 0x8c], 0xffffffff
call fcn.10044ea0
xor eax, eax
mov ecx, dword [esp + 0x84]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x7c
ret 0x10
mov edi, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
mov ecx, dword [esi + 0xc]
mov eax, dword [ecx + 4]
add edi, 0xc
cmp byte [eax + 0x89], 0
jne 0x10049147
mov edx, dword [edi]
lea esp, [esp]
cmp dword [eax + 0xc], edx
jge 0x1004913a
mov eax, dword [eax + 8]
jmp 0x1004913e
mov ecx, eax
mov eax, dword [eax]
cmp byte [eax + 0x89], 0
je 0x10049130
mov eax, dword [esi + 0xc]
mov dword [esp + 0x1c], ecx
cmp ecx, eax
je 0x1004915f
mov edx, dword [edi]
cmp edx, dword [ecx + 0xc]
jl 0x1004915f
lea eax, [esp + 0x1c]
jmp 0x10049167
mov dword [esp + 0x20], eax
lea eax, [esp + 0x20]
mov esi, dword [eax]
mov eax, dword [esp + 0x18]
cmp esi, dword [eax + 0xc]
jne 0x1004924f
cmp edi, ebx
jae 0x100491ea
cmp ebp, edi
ja 0x100491ea
mov ecx, dword [esp + 0x7c]
sub edi, ebp
sar edi, 2
cmp ebx, ecx
jne 0x100491d4
mov eax, ebx
sub eax, ebp
sar eax, 2
cmp eax, 0x3ffffffe
ja 0x10049443
sub ecx, ebp
inc eax
sar ecx, 2
cmp eax, ecx
jbe 0x100491d4
mov edx, ecx
shr edx, 1
mov esi, 0x3fffffff
sub esi, edx
cmp esi, ecx
jae 0x100491ba
xor ecx, ecx
jmp 0x100491bc
add ecx, edx
cmp ecx, eax
jae 0x100491c2
mov ecx, eax
push ecx
lea ecx, [esp + 0x78]
call fcn.1003ca50
mov ebx, dword [esp + 0x78]
mov ebp, dword [esp + 0x74]
test ebx, ebx
je 0x100491de
mov ecx, dword [ebp + edi*4]
mov dword [ebx], ecx
add ebx, 4
mov dword [esp + 0x78], ebx
jmp 0x100493d3
mov ecx, dword [esp + 0x7c]
cmp ebx, ecx
jne 0x1004923b
mov eax, ebx
sub eax, ebp
sar eax, 2
cmp eax, 0x3ffffffe
ja 0x10049443
sub ecx, ebp
inc eax
sar ecx, 2
cmp eax, ecx
jbe 0x1004923b
mov edx, ecx
shr edx, 1
mov esi, 0x3fffffff
sub esi, edx
cmp esi, ecx
jae 0x10049221
xor ecx, ecx
jmp 0x10049223
add ecx, edx
cmp ecx, eax
jae 0x10049229
mov ecx, eax
push ecx
lea ecx, [esp + 0x78]
call fcn.1003ca50
mov ebx, dword [esp + 0x78]
mov ebp, dword [esp + 0x74]
test ebx, ebx
je 0x10049243
mov edx, dword [edi]
mov dword [ebx], edx
add ebx, 4
mov dword [esp + 0x78], ebx
jmp 0x100493d3
test byte [esp + 0x9c], 1
je 0x1004929e
cmp byte [esp + 0xa0], 0
lea ecx, [esi + 0x24]
je 0x10049347
mov eax, dword [esp + 0x94]
mov ebp, dword [ecx + 4]
push eax
lea edx, [esp + 0x28]
push edx
call fcn.10048c80
cmp dword [eax], ebp
je 0x1004929a
mov eax, dword [esp + 0x94]
push 0
push eax
lea ecx, [esp + 0x64]
push ecx
lea ecx, [esi + 0x68]
call fcn.10038a30
mov ebp, dword [esp + 0x74]
test byte [esp + 0x9c], 4
je 0x100492ed
cmp byte [esp + 0xa0], 0
lea ecx, [esi + 0x14]
je 0x10049378
mov edx, dword [esp + 0x94]
mov ebp, dword [ecx + 4]
push edx
lea eax, [esp + 0x30]
push eax
call fcn.10048c80
cmp dword [eax], ebp
je 0x100492e9
mov ecx, dword [esp + 0x94]
push 0
push ecx
lea edx, [esp + 0x6c]
push edx
lea ecx, [esi + 0x58]
call fcn.10038a30
mov ebp, dword [esp + 0x74]
test byte [esp + 0x9c], 8
je 0x100493d3
cmp byte [esp + 0xa0], 0
lea edi, [esi + 0x78]
lea ecx, [esi + 0x34]
je 0x100493a9
mov edx, dword [esp + 0x94]
mov esi, dword [ecx + 4]
push edx
lea eax, [esp + 0x38]
push eax
call fcn.10048c80
cmp dword [eax], esi
je 0x100493d3
mov ecx, dword [esp + 0x94]
push 0
push ecx
lea edx, [esp + 0x74]
push edx
mov ecx, edi
call fcn.10038a30
jmp 0x100493d3
mov edx, dword [esp + 0x94]
push edx
lea eax, [esp + 0x40]
push eax
lea ecx, [esi + 0x68]
call fcn.10036d40
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x3c]
push ecx
push edx
lea eax, [esp + 0x30]
push eax
lea ecx, [esi + 0x68]
call fcn.1003deb0
jmp 0x1004929e
mov eax, dword [esp + 0x94]
push eax
lea ecx, [esp + 0x48]
push ecx
lea ecx, [esi + 0x58]
call fcn.10036d40
mov edx, dword [esp + 0x48]
mov eax, dword [esp + 0x44]
push edx
push eax
lea ecx, [esp + 0x38]
push ecx
lea ecx, [esi + 0x58]
call fcn.1003deb0
jmp 0x100492ed
mov eax, dword [esp + 0x94]
push eax
lea ecx, [esp + 0x50]
push ecx
mov ecx, edi
call fcn.10036d40
mov edx, dword [esp + 0x50]
mov eax, dword [esp + 0x4c]
push edx
push eax
lea ecx, [esp + 0x40]
push ecx
mov ecx, edi
call fcn.1003deb0
mov edx, dword [esp + 0x14]
cmp byte [edx + 0x11], 0
jne 0x1004942e
mov ecx, dword [edx + 8]
cmp byte [ecx + 0x11], 0
jne 0x10049400
mov eax, dword [ecx]
cmp byte [eax + 0x11], 0
jne 0x100493fa
mov edi, edi
mov ecx, eax
mov eax, dword [ecx]
cmp byte [eax + 0x11], 0
je 0x100493f0
mov dword [esp + 0x14], ecx
jmp 0x1004942a
mov eax, dword [edx + 4]
cmp byte [eax + 0x11], 0
jne 0x10049426
jmp 0x10049414
mov edx, dword [esp + 0x14]
cmp edx, dword [eax + 8]
jne 0x10049426
mov dword [esp + 0x14], eax
mov eax, dword [eax + 4]
cmp byte [eax + 0x11], 0
je 0x10049410
mov dword [esp + 0x14], eax
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x98]
cmp edx, dword [eax + 4]
jne 0x10049110
jmp 0x10049094
push str.vector_T__too_long
call fcn.1002e921
int3