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

Disassembly:
sub esp, 0x58
mov eax, dword [esp + 0x5c]
push ebx
mov ebx, dword [esp + 0x68]
push ebp
mov ebp, dword [esp + 0x68]
push esi
push edi
mov dword [esp + 0x10], edx
mov edx, dword [ebx]
mov edi, ecx
mov ecx, dword [eax]
mov dword [eax], 0
mov eax, dword [esp + 0x7c]
mov dword [ebx], 0
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], edx
mov dword [eax], 0
jmp case.0x100be3f1.6
mov ecx, dword [ebx]
mov esi, dword [esp + 0x18]
mov eax, dword [edi]
sub esi, ecx
mov dword [esp + 0x74], esi
cmp eax, 6
jne 0x100be3de
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x6c]
sub eax, dword [ecx]
mov dword [esp + 0x70], esi
mov dword [esp + 0x74], eax
test esi, esi
jne 0x100be2e5
test eax, eax
je 0x100be886
mov edx, dword [esp + 0x7c]
mov eax, dword [esp + 0x78]
push edx
push eax
push 0
lea ecx, [esp + 0x7c]
push ecx
push ebp
lea edx, [esp + 0x88]
push edx
mov edx, dword [esp + 0x28]
lea ecx, [edi + 0x68]
call fcn.100bdc90
mov esi, dword [esp + 0x74]
mov edx, dword [esp + 0x10]
push esi
lea ecx, [edi + 0x1a0]
mov dword [esp + 0x18], eax
call fcn.100bd630
mov eax, dword [esp + 0x70]
add dword [ebx], eax
mov ecx, dword [esp + 0x6c]
add ebp, eax
add dword [edi + 0x18], eax
mov edx, 0
adc dword [edi + 0x1c], edx
add dword [ecx], esi
add dword [esp + 0x10], esi
add dword [edi + 0x20], esi
adc dword [edi + 0x24], edx
cmp dword [esp + 0x14], edx
jne 0x100be89c
mov ecx, dword [esp + 0x7c]
cmp dword [ecx], 1
jne 0x100be3c4
mov cx, word [edi + 0x10]
call fcn.100bd5e0
xor edx, edx
xor esi, esi
add eax, dword [edi + 0x14]
lea ecx, [esp + 0x28]
adc edx, esi
add eax, dword [edi + 0x18]
adc edx, dword [edi + 0x1c]
push edx
push eax
call fcn.100bd580
mov edx, dword [edi + 0x24]
mov esi, eax
mov eax, dword [edi + 0x20]
push edx
push eax
lea ecx, [esp + esi + 0x30]
call fcn.100bd580
add esi, eax
push esi
lea ecx, [edi + 0x218]
lea edx, [esp + 0x2c]
call fcn.100bd100
add dword [edi + 0x30], esi
mov eax, 0
mov dword [edi], 7
adc dword [edi + 0x34], eax
add dword [edi + 0x28], 1
mov dword [edi + 4], eax
mov dword [edi + 8], eax
adc dword [edi + 0x2c], eax
jmp case.0x100be3f1.6
test eax, eax
jne case.0x100be3f1.6
test esi, esi
jne case.0x100be3f1.6
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x58
ret 0x14
xor edx, edx
cmp esi, edx
je 0x100be8aa
cmp eax, 7
ja case.0x100be3f1.6
jmp dword [eax*4 + 0x100be8d0]
mov eax, dword [edi + 4]
cmp eax, 0xc
jae 0x100be429
cmp eax, 6
jae 0x100be414
mov cl, byte [ebp]
cmp cl, byte [eax + 0x100d5e18]
jne 0x100be8c0
mov dl, byte [ebp]
mov byte [eax + edi + 0x2a0], dl
inc dword [edi + 4]
inc ebp
inc dword [ebx]
jmp case.0x100be3f1.6
lea edx, [edi + 0x2a0]
lea ecx, [edi + 0x10]
call fcn.100bde50
xor esi, esi
cmp eax, esi
jne 0x100be8c5
add dword [edi + 0x48], 1
lea ecx, [edi + 0x218]
mov dword [edi], 5
adc dword [edi + 0x4c], esi
call fcn.100bc5e0
mov dword [edi + 0x30], esi
mov dword [edi + 0x34], esi
mov dword [edi + 0x28], esi
mov dword [edi + 0x2c], esi
mov dword [edi + 4], esi
jmp case.0x100be3f1.6
mov ecx, dword [edi + 4]
cmp ecx, edx
jne 0x100be501
mov al, byte [ebp]
mov byte [edi + 0x2a0], al
inc dword [edi + 4]
inc dword [ebx]
inc ebp
cmp byte [edi + 0x2a0], dl
jne 0x100be4eb
mov ecx, dword [edi + 0x2c]
mov edx, dword [edi + 0x28]
push ecx
push edx
lea ecx, [edi + 0x2a1]
call fcn.100bd580
inc eax
xor ecx, ecx
add dword [edi + 0x30], eax
mov dword [edi + 0x3c], ecx
lea edx, [edi + 0x280]
adc dword [edi + 0x34], ecx
lea ecx, [edi + 0x218]
mov dword [edi + 0xc], eax
mov dword [edi + 0x38], eax
call fcn.100bd1b0
lea ecx, [edi + 0x218]
call fcn.100bc5e0
mov eax, dword [edi + 0xc]
push eax
lea edx, [edi + 0x2a0]
or ecx, 0xffffffff
call fcn.100c0a90
mov dword [edi + 0x60], eax
mov dword [edi], 1
movzx ecx, byte [edi + 0x2a0]
lea edx, [ecx*4 + 4]
mov dword [edi + 0x14], edx
jmp case.0x100be3f1.6
mov eax, dword [edi + 0x14]
cmp ecx, eax
je 0x100be538
sub eax, ecx
mov dword [esp + 0x74], eax
cmp eax, esi
jbe 0x100be516
mov dword [esp + 0x74], esi
mov esi, dword [esp + 0x74]
push esi
lea eax, [ecx + edi + 0x2a0]
push ebp
push eax
call sub.MSVCRT.dll_memcpy
add dword [edi + 4], esi
add dword [ebx], esi
add esp, 0xc
add ebp, esi
jmp case.0x100be3f1.6
lea edx, [edi + 0x2a0]
lea ecx, [edi + 0x108]
call fcn.100bdf10
xor ecx, ecx
cmp eax, ecx
jne 0x100be8c5
add dword [edi + 0x58], 1
movzx edx, word [edi + 0x10]
adc dword [edi + 0x5c], ecx
mov dword [edi + 0x18], ecx
mov dword [edi + 0x1c], ecx
mov dword [edi + 0x20], ecx
mov dword [edi + 0x24], ecx
and edx, 0xf
lea ecx, [edi + 0x1a0]
mov dword [edi], 6
call fcn.100bd600
lea ecx, [edi + 0x68]
lea edx, [edi + 0x108]
call fcn.100be090
test eax, eax
je case.0x100be3f1.6
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x58
ret 0x14
mov eax, dword [edi + 8]
add eax, dword [edi + 0x18]
and eax, 3
or eax, edx
je 0x100be5cc
inc ecx
mov dword [ebx], ecx
inc dword [edi + 8]
mov cl, byte [ebp]
inc ebp
test cl, cl
je case.0x100be3f1.6
pop edi
pop esi
pop ebp
mov eax, 3
pop ebx
add esp, 0x58
ret 0x14
mov cx, word [edi + 0x10]
call fcn.100bd5e0
mov ecx, dword [edi + 4]
mov esi, eax
sub esi, ecx
mov dword [esp + 0x70], eax
je 0x100be60a
mov eax, dword [esp + 0x74]
cmp esi, eax
jbe 0x100be5ec
mov esi, eax
push esi
lea edx, [ecx + edi + 0x2a0]
push ebp
push edx
call sub.MSVCRT.dll_memcpy
add dword [edi + 4], esi
add dword [ebx], esi
add esp, 0xc
add ebp, esi
jmp case.0x100be3f1.6
lea ecx, [edi + 0x1a0]
lea edx, [esp + 0x28]
mov dword [edi], 5
mov dword [edi + 4], 0
call fcn.100bd690
test eax, eax
je case.0x100be3f1.6
mov eax, dword [esp + 0x70]
lea esi, [edi + 0x2a0]
lea ecx, [esp + 0x28]
cmp eax, 4
jb 0x100be659
mov edx, dword [ecx]
cmp edx, dword [esi]
jne 0x100be5bd
sub eax, 4
add esi, 4
add ecx, 4
cmp eax, 4
jae 0x100be641
test eax, eax
je case.0x100be3f1.6
mov dl, byte [esi]
cmp dl, byte [ecx]
jne 0x100be5bd
cmp eax, 1
jbe case.0x100be3f1.6
mov dl, byte [esi + 1]
cmp dl, byte [ecx + 1]
jne 0x100be5bd
cmp eax, 2
jbe case.0x100be3f1.6
mov al, byte [esi + 2]
cmp al, byte [ecx + 2]
jmp 0x100be5b7
mov edx, dword [edi + 4]
cmp edx, dword [edi + 0xc]
jae 0x100be6b8
inc ecx
mov dword [ebx], ecx
mov esi, dword [edi + 4]
mov cl, byte [esi + edi + 0x2a0]
mov al, byte [ebp]
inc esi
inc ebp
mov dword [edi + 4], esi
cmp al, cl
jmp 0x100be5b7
mov eax, dword [edi + 0x34]
mov edx, dword [edi + 0x38]
mov ecx, dword [edi + 0x30]
mov dword [esp + 0x20], edx
cmp dword [edi + 0x3c], eax
ja 0x100be70f
jb 0x100be6d0
cmp edx, ecx
jae 0x100be70f
sub ecx, edx
sbb eax, dword [edi + 0x3c]
xor edx, edx
cmp edx, eax
jb 0x100be6e3
ja 0x100be6e1
cmp esi, ecx
jbe 0x100be6e3
mov esi, ecx
mov ecx, dword [edi + 0x60]
push esi
mov edx, ebp
call fcn.100c0a90
push esi
lea ecx, [edi + 0x218]
mov edx, ebp
mov dword [edi + 0x60], eax
call fcn.100bd100
add dword [ebx], esi
add ebp, esi
add dword [edi + 0x38], esi
adc dword [edi + 0x3c], 0
jmp case.0x100be3f1.6
and edx, 3
xor esi, esi
or edx, esi
je 0x100be755
mov cl, byte [ebp]
mov eax, dword [edi + 0x60]
movzx esi, cl
xor esi, eax
shr eax, 8
and esi, 0xff
xor eax, dword [esi*4 + 0x100edac0]
mov edx, 1
add ebp, edx
mov dword [edi + 0x60], eax
add dword [ebx], edx
add dword [edi + 0x38], edx
mov eax, 0
adc dword [edi + 0x3c], eax
add dword [edi + 0x30], edx
adc dword [edi + 0x34], eax
jmp 0x100be5b5
add ecx, 4
adc eax, 0
mov dword [edi + 0x30], ecx
lea ecx, [edi + 0x218]
lea edx, [esp + 0x28]
mov dword [edi], 2
mov dword [edi + 0x34], eax
mov dword [edi + 4], esi
call fcn.100bd1b0
lea eax, [edi + 0x280]
lea ecx, [esp + 0x28]
mov edx, 0x20
sub ecx, eax
lea ebx, [ebx]
mov esi, dword [eax + ecx]
cmp esi, dword [eax]
jne 0x100be5bd
sub edx, 4
add eax, 4
cmp edx, 4
jae 0x100be790
jmp case.0x100be3f1.6
cmp dword [edi + 4], 4
jae 0x100be7ca
inc ecx
mov dword [ebx], ecx
mov cl, byte [ebp]
mov eax, dword [edi + 4]
mov byte [eax + edi + 0x2a0], cl
inc dword [edi + 4]
inc ebp
jmp case.0x100be3f1.6
mov dword [edi + 4], edx
mov edx, dword [edi + 0x60]
not edx
cmp edx, dword [edi + 0x2a0]
mov dword [edi], 3
jmp 0x100be5b7
mov eax, dword [edi + 4]
mov ecx, dword [esp + 0x74]
mov esi, 0xc
sub esi, eax
cmp esi, ecx
jbe 0x100be7f7
mov esi, ecx
push esi
lea eax, [eax + edi + 0x2a0]
push ebp
push eax
call sub.MSVCRT.dll_memcpy
add dword [edi + 4], esi
add dword [ebx], esi
add esp, 0xc
add ebp, esi
cmp dword [edi + 4], 0xc
jne case.0x100be3f1.6
add dword [edi + 0x50], 1
mov ecx, dword [edi + 0x34]
mov edx, dword [edi + 0x30]
mov eax, 0
adc dword [edi + 0x54], eax
mov dword [edi + 0x40], eax
mov dword [edi + 0x44], eax
movzx eax, word [edi + 0x10]
push ecx
push edx
lea esi, [edi + 0x2a0]
push eax
mov dword [edi], 4
call fcn.100bdea0
test eax, eax
jne case.0x100be3f1.6
pop edi
pop esi
pop ebp
mov eax, 3
pop ebx
add esp, 0x58
ret 0x14
cmp byte [ebp], dl
je 0x100be876
test byte [edi + 0x40], 3
jne 0x100be8c0
mov dword [edi + 4], edx
mov dword [edi], edx
jmp case.0x100be3f1.6
inc ecx
mov dword [ebx], ecx
inc ebp
add dword [edi + 0x40], 1
adc dword [edi + 0x44], edx
jmp case.0x100be3f1.6
mov ecx, dword [esp + 0x7c]
pop edi
pop esi
pop ebp
mov dword [ecx], 2
xor eax, eax
pop ebx
add esp, 0x58
ret 0x14
mov eax, dword [esp + 0x14]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x58
ret 0x14
mov edx, dword [esp + 0x7c]
pop edi
pop esi
pop ebp
mov dword [edx], 3
xor eax, eax
pop ebx
add esp, 0x58
ret 0x14
mov eax, 0x11
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x58
ret 0x14