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

Disassembly:
sub esp, 0x10
mov ecx, dword [0x10057f2c]
push ebx
mov ebx, dword [0x10057f3c]
mov eax, ebx
push ebp
push esi
mov esi, dword [0x10057f38]
sub eax, ecx
imul eax, esi
push edi
mov edi, dword [0x10057f34]
lea edx, [eax + edi*2 - 2]
mov eax, dword [0x10057f30]
imul edx, esi
mov ebp, 2
sub ebp, eax
imul ebp, ebx
add edx, ebp
lea ebx, [edi - 2]
imul ebx, ecx
add edx, ebx
mov ebx, ecx
imul ebx, ecx
sub edx, eax
add edx, edi
mov ebp, eax
sub ebp, ebx
imul ebp, eax
add ebp, esi
lea ebx, [ecx + 1]
imul ebx, dword [0x10057f3c]
add ebx, ebp
mov ebp, dword [esp + 0x24]
add ebx, edi
lea edx, [edx + edx*2]
shl edx, 7
mov ebp, dword [edx + ebp + 0x3c]
add ebx, ecx
imul ebx, ebx, 0x4d8
mov edx, esi
imul edx, eax
add ebp, ebx
mov ebx, edi
sub ebx, edx
mov edx, esi
imul ebx, ecx
imul edx, esi
imul edx, esi
sub ebx, esi
lea edx, [edx + edx*2]
add edx, edx
lea esi, [eax*4]
sub esi, edx
add esi, eax
add esi, eax
imul esi, eax
sub ebx, edi
add ebp, dword [esp + 0x24]
sub esi, 6
imul esi, edi
mov edi, dword [0x10057f3c]
lea edx, [ecx + ecx]
sub edi, edx
sub edi, eax
add edi, 1
imul edi, dword [0x10057f3c]
mov edx, edi
mov edi, dword [0x10057f38]
lea edx, [edx + edi*2]
add ebx, eax
lea edx, [edx + edx*2]
lea edx, [esi + edx*2]
shl ebx, 4
mov esi, dword [ebx + ebp + 0x78]
lea edx, [edx + edx*4]
lea ebx, [esi + edx*8]
mov edx, dword [0x10057f34]
add ebx, dword [esp + 0x24]
mov esi, dword [0x10057f3c]
mov ebp, edx
sub ebp, esi
sub ebp, eax
sub ebp, ecx
sub ebp, 3
imul ebp, edi
lea edi, [esi + esi]
sub edi, ecx
add edi, 1
imul edi, eax
add ebp, edi
lea edi, [esi + 2]
imul edi, ecx
add ebp, edi
lea edi, [edx + edx*2]
add edi, edi
sub ebp, edi
mov edi, dword [ebx + 0x20]
lea edi, [edi + ebp*4]
add edi, dword [esp + 0x24]
mov ebp, dword [0x10057f38]
mov dword [esp + 0x14], edi
add ebp, 0xffffffff
imul ebp, edx
mov edi, esi
sub edi, eax
imul edi, ecx
lea ebp, [edi + ebp + 1]
imul ebp, dword [0x10057f38]
mov edi, 1
sub edi, eax
imul edi, eax
add ebp, edi
mov edi, edx
imul edi, ecx
add ebp, edi
lea edi, [esi + esi]
sub ebp, edi
mov edi, dword [0x10057f38]
imul edi, edx
add edi, 6
imul edi, edx
add ebp, esi
lea edi, [edi + ebp*2]
lea ebp, [ecx + ecx*2]
add edi, ebp
mov ebp, dword [ebx + 0x1c]
lea edi, [edi + edi*2]
lea edi, [ebp + edi*2]
add edi, dword [esp + 0x24]
mov dword [esp + 0x10], 0
mov dword [esp + 0x1c], edi
lea edi, [esi + esi*4]
add edi, edi
mov ebp, edi
mov edi, 0xa
sub edi, ebp
imul edi, ecx
mov ebp, eax
shl ebp, 4
add ebp, eax
add ebp, ebp
sub edi, ebp
add edi, dword [ebx + 0x24]
mov ebx, dword [ebx + 0x18]
add edi, dword [esp + 0x24]
test ebx, ebx
mov dword [esp + 0x18], ebx
jbe 0x100025ee
mov ebp, dword [0x10057f38]
lea ebx, [eax + ecx]
imul ebx, esi
sub ebp, ebx
sub ebp, 3
imul ebp, dword [0x10057f38]
sub eax, edx
mov edx, dword [esp + 0x14]
lea eax, [ebp + eax*2]
sub eax, esi
sub eax, ecx
lea eax, [eax + eax*2]
lea ebp, [edx + eax*4]
mov edx, dword [ebp]
add edx, dword [esp + 0x24]
xor ebx, ebx
mov al, byte [edx]
test al, al
je 0x100025ce
ror ebx, 0xd
cmp al, 0x61
movsx eax, al
jl 0x100025c3
sub eax, 0x20
add edx, 1
add ebx, eax
mov al, byte [edx]
test al, al
jne 0x100025b6
add ebx, 0x21b8c254
cmp ebx, dword [esp + 0x28]
je 0x100025f8
mov eax, dword [esp + 0x10]
add eax, 1
add ebp, 4
cmp eax, dword [esp + 0x18]
mov dword [esp + 0x10], eax
jb 0x100025a7
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x10
ret
mov eax, dword [0x10057f38]
sub eax, esi
sub eax, ecx
mov ecx, dword [esp + 0x10]
lea edx, [ecx + eax*2]
mov ecx, dword [esp + 0x1c]
add edx, eax
movzx eax, word [edi + edx*2]
mov eax, dword [ecx + eax*4]
add eax, dword [esp + 0x24]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret