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

Disassembly:
push 0xffffffffffffffff
push 0x1310ee20
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x54
mov eax, dword [esp + 0x78]
push ebx
push esi
push eax
call fcn.130071a0
add esp, 4
lea ecx, [esp + 0x40]
mov esi, eax
push ecx
mov ecx, esi
call fcn.1300ff00
xor ebx, ebx
mov dword [esp + 0x64], ebx
cmp dword [esp + 0x54], ebx
jne 0x13028cc7
mov dword [esp + 0x18], ebx
jmp 0x13028cd7
mov edx, dword [esi]
mov eax, dword [edx + 8]
mov ecx, esi
call eax
movzx ecx, ax
mov dword [esp + 0x18], ecx
push ebp
mov ebp, dword [esp + 0x70]
add ebp, 8
push ebp
lea edx, [esp + 0x18]
push edx
push 1
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0x30]
push ecx
mov byte [esp + 0x20], 0x30
mov dword [esp + 0x34], ebx
mov dword [esp + 0x28], ebx
mov dword [esp + 0x2c], ebp
call fcn.1302f440
mov esi, dword [esp + 0x8c]
mov edx, dword [esp + 0x88]
add esp, 0x14
cmp byte [esi + 8], bl
mov dword [esp + 0x10], edx
jne 0x13028d28
mov ecx, esi
call fcn.13028590
push edi
mov edi, dword [esp + 0x80]
cmp byte [edi + 8], bl
jne 0x13028d3c
mov ecx, edi
call fcn.13028590
mov eax, dword [esi + 4]
cmp eax, ebx
jne 0x13028d50
cmp dword [edi + 4], ebx
je 0x13028e0b
cmp eax, ebx
je 0x13028d59
cmp dword [edi + 4], ebx
jne 0x13028e0b
cmp byte [esi + 8], bl
jne 0x13028d65
mov ecx, esi
call fcn.13028590
movzx edi, word [esi + 0xa]
push ebp
lea eax, [esp + 0x1c]
push eax
push 1
lea ecx, [esp + 0x80]
push ecx
lea edx, [esp + 0x8c]
push edx
mov byte [esp + 0x88], 0x2b
mov dword [esp + 0x90], ebx
mov dword [esp + 0x2c], ebx
call fcn.1302f440
add esp, 0x14
cmp di, word [esp + 0x7c]
jne 0x13028dac
mov eax, dword [esp + 0x78]
mov byte [eax], 0x2b
jmp 0x13028dfd
cmp byte [esi + 8], bl
jne 0x13028db8
mov ecx, esi
call fcn.13028590
movzx edi, word [esi + 0xa]
push ebp
lea eax, [esp + 0x1c]
push eax
push 1
lea ecx, [esp + 0x80]
push ecx
lea edx, [esp + 0x8c]
push edx
mov byte [esp + 0x88], 0x2d
mov dword [esp + 0x90], ebx
mov dword [esp + 0x2c], ebx
call fcn.1302f440
add esp, 0x14
cmp di, word [esp + 0x7c]
jne 0x13028e0b
mov eax, dword [esp + 0x78]
mov byte [eax], 0x2d
add eax, 1
mov ecx, esi
mov dword [esp + 0x14], eax
call fcn.13028530
mov eax, dword [esp + 0x84]
and eax, 0xe00
cmp eax, 0x400
jne 0x13028e29
mov ebp, 8
mov dword [esp + 0x18], ebp
jmp 0x13028e48
cmp eax, 0x800
jne 0x13028e3b
mov ebp, 0x10
mov dword [esp + 0x18], ebp
jmp 0x13028e48
neg eax
sbb eax, eax
and eax, 0xa
mov ebp, eax
mov dword [esp + 0x18], eax
mov edi, dword [esp + 0x80]
push edi
push esi
mov byte [esp + 0x7c], bl
mov byte [esp + 0x84], bl
call fcn.130286f0
add esp, 8
test al, al
je 0x13028f3e
cmp byte [esi + 8], bl
jne 0x13028e78
mov ecx, esi
call fcn.13028590
movzx eax, word [esi + 0xa]
cmp ax, word [esp + 0x24]
jne 0x13028f3e
mov ecx, esi
mov byte [esp + 0x74], 1
call fcn.13028530
push edi
push esi
call fcn.130286f0
add esp, 8
test al, al
je 0x13028f30
cmp byte [esi + 8], bl
jne 0x13028eb1
mov ecx, esi
call fcn.13028590
mov eax, dword [esp + 0x1c]
movzx edi, word [esi + 0xa]
push eax
lea ecx, [esp + 0x2c]
push ecx
push 1
lea edx, [esp + 0x90]
push edx
lea eax, [esp + 0x34]
push eax
mov byte [esp + 0x98], 0x78
mov dword [esp + 0x38], ebx
mov dword [esp + 0x3c], ebx
call fcn.1302f440
add esp, 0x14
cmp di, word [esp + 0x24]
je 0x13028f12
cmp byte [esi + 8], bl
jne 0x13028ef9
mov ecx, esi
call fcn.13028590
mov ecx, dword [esp + 0x1c]
movzx edi, word [esi + 0xa]
push ecx
push ebx
push 0x58
call fcn.13005ae0
add esp, 0xc
cmp di, ax
jne 0x13028f30
cmp ebp, ebx
je 0x13028f1b
cmp ebp, 0x10
jne 0x13028f30
mov ecx, esi
mov dword [esp + 0x18], 0x10
mov byte [esp + 0x74], bl
call fcn.13028530
jmp 0x13028f47
cmp ebp, ebx
jne 0x13028f42
mov dword [esp + 0x18], 8
jmp 0x13028f47
cmp ebp, ebx
je 0x13028f5a
cmp ebp, 0xa
je 0x13028f5a
mov ebp, dword [esp + 0x18]
sub ebp, 8
neg ebp
sbb ebp, ebp
and ebp, 0xe
add ebp, 8
jmp 0x13028f5f
mov ebp, 0xa
mov dl, byte [esp + 0x74]
mov dword [esp + 0x40], ebx
mov byte [esp + 0x30], bl
mov dword [esp + 0x44], 0xf
mov byte [esp + 0x30], dl
mov dword [esp + 0x40], 1
mov byte [esp + 0x31], bl
mov byte [esp + 0x6c], 1
xor edi, edi
lea ebx, [ebx]
cmp byte [esi + 8], bl
jne 0x13028fd1
mov ecx, dword [esi + 4]
cmp ecx, ebx
je 0x13028fca
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x13028fb1
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x13028fb1
mov eax, dword [eax]
movzx eax, word [eax]
jmp 0x13028fbb
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
movzx eax, ax
movzx eax, ax
cmp ax, 0xffff
je 0x13028fca
mov word [esi + 0xa], ax
jmp 0x13028fcd
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
mov edx, dword [esp + 0x80]
cmp byte [edx + 8], bl
jne 0x13029020
mov ecx, dword [edx + 4]
cmp ecx, ebx
je 0x13029019
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x13028ff9
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x13028ff9
mov eax, dword [eax]
movzx eax, word [eax]
jmp 0x13029003
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
movzx eax, ax
mov edx, dword [esp + 0x80]
movzx eax, ax
cmp ax, 0xffff
je 0x13029019
mov word [edx + 0xa], ax
jmp 0x1302901c
mov dword [edx + 4], ebx
mov byte [edx + 8], 1
mov ecx, dword [esi + 4]
cmp ecx, ebx
jne 0x13029063
cmp dword [edx + 4], ebx
jne 0x13029068
cmp edi, ebx
je 0x13029204
cmp edi, dword [esp + 0x40]
jbe 0x1302903f
call fcn.130311e1
mov eax, dword [esp + 0x30]
mov ebp, 0x10
cmp dword [esp + 0x44], ebp
jae 0x13029052
lea eax, [esp + 0x30]
cmp byte [eax + edi], bl
jle 0x130291fe
add edi, 1
jmp 0x13029209
cmp dword [edx + 4], ebx
jne 0x1302902c
cmp byte [esi + 8], bl
jne 0x130290a6
cmp ecx, ebx
je 0x1302909f
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x13029086
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x13029086
mov eax, dword [eax]
movzx eax, word [eax]
jmp 0x13029090
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
movzx eax, ax
movzx eax, ax
cmp ax, 0xffff
je 0x1302909f
mov word [esi + 0xa], ax
jmp 0x130290a2
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
mov ecx, dword [esp + 0x1c]
movzx eax, word [esi + 0xa]
push ecx
lea edx, [esp + 0x2c]
push edx
push eax
lea eax, [esp + 0x90]
push eax
mov byte [esp + 0x94], bl
mov dword [esp + 0x38], ebx
call fcn.1302ebdb
mov al, byte [esp + 0x94]
mov ecx, dword [esp + 0x24]
movsx edx, al
push ebp
push edx
push 0x13111db4
mov byte [ecx], al
call fcn.13031380
add esp, 0x1c
test eax, eax
je 0x1302915b
cmp byte [esp + 0x7c], bl
jne 0x130290ff
mov eax, dword [esp + 0x14]
cmp byte [eax], 0x30
je 0x13029116
mov eax, dword [esp + 0x78]
add eax, 0x1f
cmp dword [esp + 0x14], eax
jae 0x13029116
add dword [esp + 0x14], 1
mov byte [esp + 0x7c], 1
cmp edi, dword [esp + 0x40]
mov byte [esp + 0x74], 1
jbe 0x13029126
call fcn.130311e1
cmp dword [esp + 0x44], 0x10
mov eax, dword [esp + 0x30]
jae 0x13029135
lea eax, [esp + 0x30]
cmp byte [eax + edi], 0x7f
je 0x130291b3
cmp edi, dword [esp + 0x40]
jbe 0x13029146
call fcn.130311e1
cmp dword [esp + 0x44], 0x10
mov eax, dword [esp + 0x30]
jae 0x13029155
lea eax, [esp + 0x30]
add byte [eax + edi], 1
jmp 0x130291b3
cmp edi, dword [esp + 0x40]
jbe 0x13029166
call fcn.130311e1
cmp dword [esp + 0x44], 0x10
mov eax, dword [esp + 0x30]
jae 0x13029175
lea eax, [esp + 0x30]
cmp byte [eax + edi], bl
je 0x1302902c
cmp word [esp + 0x20], bx
je 0x1302902c
cmp byte [esi + 8], bl
jne 0x13029195
mov ecx, esi
call fcn.13028590
movzx eax, word [esi + 0xa]
cmp ax, word [esp + 0x20]
jne 0x1302902c
push ebx
push 1
lea ecx, [esp + 0x34]
call fcn.130061e0
add edi, 1
mov ecx, dword [esi + 4]
cmp ecx, ebx
je 0x130291f2
mov edx, dword [ecx + 0x20]
cmp dword [edx], ebx
je 0x130291da
mov eax, dword [ecx + 0x30]
cmp dword [eax], ebx
jle 0x130291da
add dword [eax], 0xffffffff
mov ecx, dword [ecx + 0x20]
mov eax, dword [ecx]
lea edx, [eax + 2]
mov dword [ecx], edx
movzx eax, word [eax]
jmp 0x130291e4
mov eax, dword [ecx]
mov edx, dword [eax + 0x14]
call edx
movzx eax, ax
cmp ax, 0xffff
je 0x130291f2
mov byte [esi + 8], bl
jmp 0x13028f90
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
jmp 0x13028f90
mov byte [esp + 0x74], bl
jmp 0x13029209
mov ebp, 0x10
cmp dword [esp + 0x60], ebp
mov esi, dword [esp + 0x4c]
jae 0x13029217
lea esi, [esp + 0x4c]
cmp byte [esp + 0x74], bl
je 0x13029298
lea ecx, [ecx]
cmp edi, ebx
jbe 0x13029286
cmp byte [esi], 0x7f
je 0x13029286
sub edi, 1
je 0x13029253
cmp edi, dword [esp + 0x40]
jbe 0x1302923e
call fcn.130311e1
mov ebp, 0x10
cmp dword [esp + 0x44], ebp
mov eax, dword [esp + 0x30]
jae 0x1302924c
lea eax, [esp + 0x30]
mov cl, byte [esi]
cmp cl, byte [eax + edi]
jne 0x13029298
cmp edi, ebx
jne 0x1302927c
cmp edi, dword [esp + 0x40]
jbe 0x13029267
call fcn.130311e1
mov ebp, 0x10
cmp dword [esp + 0x44], ebp
mov eax, dword [esp + 0x30]
jae 0x13029275
lea eax, [esp + 0x30]
mov dl, byte [esi]
cmp dl, byte [eax + edi]
jl 0x13029298
cmp byte [esi + 1], bl
jle 0x13029220
add esi, 1
jmp 0x13029220
cmp byte [esp + 0x7c], bl
mov eax, dword [esp + 0x14]
jne 0x1302929c
mov byte [eax], 0x30
add eax, 1
jmp 0x1302929c
mov eax, dword [esp + 0x78]
mov byte [eax], bl
mov byte [esp + 0x6c], bl
cmp dword [esp + 0x44], ebp
pop edi
jb 0x130292bb
mov eax, dword [esp + 0x2c]
push eax
call fcn.13030fdc
add esp, 4
mov ebp, 0x10
mov dword [esp + 0x40], 0xf
mov dword [esp + 0x3c], ebx
mov byte [esp + 0x2c], bl
mov dword [esp + 0x68], 0xffffffff
cmp dword [esp + 0x5c], ebp
pop ebp
jb 0x130292e7
mov ecx, dword [esp + 0x44]
push ecx
call fcn.13030fdc
add esp, 4
mov ecx, dword [esp + 0x5c]
mov eax, dword [esp + 0x10]
mov dword [esp + 0x54], ebx
mov byte [esp + 0x44], bl
pop esi
mov dword [esp + 0x54], 0xf
pop ebx
mov dword fs:[0], ecx
add esp, 0x60
ret