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

Disassembly:
sub esp, 0x60
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0x68]
mov edx, dword [ecx]
push ebx
push ebp
mov ebp, dword [eax]
mov eax, dword [esp + 0x74]
mov ebx, dword [eax]
push esi
push edi
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x18], edx
mov dword [esp + 0x14], ebx
mov ecx, dword [esp + 0x18]
mov al, byte [ecx]
test al, al
jne 0x100240d7
cmp byte [ebx], al
je 0x1002445b
cmp al, 1
jne 0x100240f7
mov al, byte [ecx + 1]
inc ecx
test al, al
jns 0x100240f2
lea esi, [esp + 0x20]
call fcn.10011c60
mov edi, dword [esp + 0x20]
jmp 0x1002410b
movzx edi, al
jmp 0x10024107
xor ecx, ecx
test al, al
setne cl
dec ecx
and ecx, 0x7fffffff
mov edi, ecx
mov dword [esp + 0x20], edi
mov al, byte [ebx]
cmp al, 1
jne 0x1002412f
mov al, byte [ebx + 1]
lea ecx, [ebx + 1]
test al, al
jns 0x1002412a
lea esi, [esp + 0x24]
call fcn.10011c60
mov eax, dword [esp + 0x24]
jmp 0x10024143
movzx eax, al
jmp 0x1002413f
xor edx, edx
test al, al
setne dl
dec edx
and edx, 0x7fffffff
mov eax, edx
mov dword [esp + 0x24], eax
cmp edi, eax
jne 0x100243a1
xor ecx, ecx
mov dword [esp + 0x38], ecx
mov dword [esp + 0x3c], ecx
cmp edi, ecx
je 0x1002418d
mov eax, edi
cdq
lea ebx, [ebp + 1]
mov ecx, ebx
mov esi, edx
mov dl, al
shrd eax, esi, 7
or dl, 0x80
mov byte [ecx], dl
shr esi, 7
mov edx, eax
inc ecx
or edx, esi
jne 0x10024163
and byte [ecx - 1], 0x7f
sub ecx, ebx
mov ebx, dword [esp + 0x14]
inc ecx
mov byte [ebp], 1
add ebp, ecx
mov dword [esp + 0x1c], ebp
mov esi, dword [esp + 0x18]
lea eax, [esp + 0x40]
add esi, ecx
push eax
mov eax, esi
add ebx, ecx
call fcn.10011ce0
mov edi, dword [esp + 0x44]
mov ebp, dword [esp + 0x48]
add esi, eax
lea ecx, [esp + 0x4c]
add esp, 4
push ecx
mov eax, ebx
mov dword [esp + 0x1c], esi
mov dword [esp + 0x2c], edi
mov dword [esp + 0x30], ebp
call fcn.10011ce0
add esp, 4
add ebx, eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x14], ebx
mov ebx, dword [esp + 0x48]
mov dword [esp + 0x34], eax
jmp 0x100241ec
mov edi, dword [esp + 0x28]
mov ebp, dword [esp + 0x2c]
mov eax, dword [esp + 0x34]
cmp ebp, eax
jg 0x100241f6
jl 0x100241fa
cmp edi, ebx
jb 0x100241fa
mov edi, ebx
mov ebp, eax
mov ecx, dword [esp + 0x1c]
mov eax, edi
sub eax, dword [esp + 0x38]
mov esi, ebp
sbb esi, dword [esp + 0x3c]
lea ebx, [ebx]
mov dl, al
shrd eax, esi, 7
or dl, 0x80
mov byte [ecx], dl
shr esi, 7
mov edx, eax
inc ecx
or edx, esi
jne 0x10024210
and byte [ecx - 1], 0x7f
sub edi, 2
mov esi, edx
sbb ebp, esi
mov dword [esp + 0x3c], ebp
mov ebp, dword [esp + 0x28]
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x38], edi
cmp ebp, ebx
jne 0x100242d7
mov eax, dword [esp + 0x2c]
cmp eax, dword [esp + 0x34]
jne 0x100242d7
mov edi, dword [esp + 0x18]
test byte [edi], 0xfe
je 0x1002428d
lea ecx, [esp + 0x50]
push ecx
mov eax, edi
call fcn.10011ce0
mov edx, dword [esp + 0x54]
add edi, eax
mov eax, dword [esp + 0x58]
add esp, 4
sub edx, 2
sbb eax, esi
add ebp, edx
adc dword [esp + 0x2c], eax
mov dword [esp + 0x18], edi
mov dword [esp + 0x28], ebp
jmp 0x1002429d
mov dword [esp + 0x28], 0x7fffffff
mov ebp, dword [esp + 0x28]
mov dword [esp + 0x2c], esi
mov edi, dword [esp + 0x14]
test byte [edi], 0xfe
je 0x1002435f
lea ecx, [esp + 0x58]
push ecx
mov eax, edi
call fcn.10011ce0
mov edx, dword [esp + 0x5c]
add edi, eax
mov eax, dword [esp + 0x60]
add esp, 4
sub edx, 2
sbb eax, esi
add ebx, edx
adc dword [esp + 0x34], eax
mov dword [esp + 0x14], edi
jmp 0x10024368
mov ecx, dword [esp + 0x34]
cmp dword [esp + 0x2c], ecx
jg 0x1002432c
jl 0x100242e7
cmp ebp, ebx
jae 0x1002432c
mov edi, dword [esp + 0x18]
test byte [edi], 0xfe
je 0x1002431e
lea edx, [esp + 0x60]
push edx
mov eax, edi
call fcn.10011ce0
mov ecx, dword [esp + 0x68]
add edi, eax
mov eax, dword [esp + 0x64]
add esp, 4
sub eax, 2
sbb ecx, esi
add ebp, eax
adc dword [esp + 0x2c], ecx
mov dword [esp + 0x18], edi
mov dword [esp + 0x28], ebp
jmp 0x10024368
mov dword [esp + 0x28], 0x7fffffff
mov dword [esp + 0x2c], esi
jmp 0x1002437e
mov edi, dword [esp + 0x14]
test byte [edi], 0xfe
je 0x1002435f
lea edx, [esp + 0x68]
push edx
mov eax, edi
call fcn.10011ce0
mov ecx, dword [esp + 0x70]
add edi, eax
mov eax, dword [esp + 0x6c]
add esp, 4
sub eax, 2
sbb ecx, esi
add ebx, eax
adc dword [esp + 0x34], ecx
mov dword [esp + 0x14], edi
jmp 0x10024368
mov dword [esp + 0x34], esi
mov ebx, 0x7fffffff
cmp ebp, 0x7fffffff
jne 0x100241e0
cmp dword [esp + 0x2c], esi
jne 0x100241e0
cmp ebx, 0x7fffffff
jne 0x100241e0
cmp dword [esp + 0x34], esi
jne 0x100241e0
mov ebp, dword [esp + 0x1c]
mov ebx, dword [esp + 0x14]
jmp 0x100240c5
jge 0x100243fc
xor ecx, ecx
test edi, edi
je 0x100243dd
mov eax, edi
cdq
lea ebx, [ebp + 1]
mov ecx, ebx
mov esi, edx
mov dl, al
shrd eax, esi, 7
or dl, 0x80
mov byte [ecx], dl
shr esi, 7
mov edx, eax
inc ecx
or edx, esi
jne 0x100243b3
and byte [ecx - 1], 0x7f
sub ecx, ebx
mov ebx, dword [esp + 0x14]
inc ecx
mov byte [ebp], 1
add ebp, ecx
mov dword [esp + 0x1c], ebp
add dword [esp + 0x18], ecx
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0x20]
push ecx
call fcn.10011ae0
mov ebp, dword [esp + 0x24]
add esp, 8
jmp 0x100240c5
xor ecx, ecx
test eax, eax
je 0x10024436
cdq
lea edi, [ebp + 1]
mov ecx, edi
mov esi, edx
lea ebx, [ebx]
mov dl, al
shrd eax, esi, 7
or dl, 0x80
mov byte [ecx], dl
shr esi, 7
mov edx, eax
inc ecx
or edx, esi
jne 0x10024410
and byte [ecx - 1], 0x7f
sub ecx, edi
inc ecx
mov byte [ebp], 1
add ebp, ecx
mov dword [esp + 0x1c], ebp
add ebx, ecx
lea eax, [esp + 0x14]
push eax
lea ecx, [esp + 0x20]
push ecx
mov dword [esp + 0x1c], ebx
call fcn.10011ae0
mov ebx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x24]
add esp, 8
jmp 0x100240c5
mov eax, dword [esp + 0x78]
mov edx, dword [esp + 0x74]
mov byte [ebp], 0
inc ecx
pop edi
inc ebp
pop esi
mov dword [eax], ecx
mov ecx, dword [esp + 0x74]
inc ebx
mov dword [edx], ebp
pop ebp
mov dword [ecx], ebx
pop ebx
add esp, 0x60
ret