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

Disassembly:
mov eax, 0x64
call fcn.100713b0
push ebx
push ebp
push esi
mov esi, dword [esp + 0x7c]
push edi
mov eax, dword [esi + 4]
test eax, eax
jle 0x100ac605
mov ecx, dword [esi]
mov edx, dword [ecx + eax*4 - 4]
test edx, edx
jne 0x100ac605
push 0xc3
push str..crypto_bn_bn_div.c
push 0x6b
push 0x6b
push 3
call fcn.1008b9f0
add esp, 0x14
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x64
ret
test byte [esi + 0x10], 4
mov eax, dword [esp + 0x84]
jne 0x100aca46
test byte [eax + 0x10], 4
jne 0x100aca46
mov ecx, dword [eax + 4]
test ecx, ecx
jne 0x100ac649
push 0xd5
push str..crypto_bn_bn_div.c
push 0x67
push 0x6b
push 3
call fcn.1008b9f0
add esp, 0x14
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x64
ret
push eax
push esi
call fcn.1009fd50
add esp, 8
test eax, eax
jge 0x100ac691
mov eax, dword [esp + 0x7c]
test eax, eax
je 0x100ac671
push esi
push eax
call fcn.1009f900
add esp, 8
test eax, eax
je 0x100ace61
mov eax, dword [esp + 0x78]
test eax, eax
je 0x100ac684
push 0
push eax
call fcn.1009fa90
add esp, 8
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x64
ret
mov edi, dword [esp + 0x88]
push edi
call fcn.100a24f0
push edi
call fcn.100a2640
push edi
mov dword [esp + 0x20], eax
call fcn.100a2640
mov esi, eax
push edi
mov dword [esp + 0x38], esi
call fcn.100a2640
mov ebx, dword [esp + 0x88]
add esp, 0x10
mov ebp, eax
test ebx, ebx
mov dword [esp + 0x10], ebp
jne 0x100ac6d9
push edi
call fcn.100a2640
add esp, 4
mov ebx, eax
test ebp, ebp
je 0x100aca2c
test ebx, ebx
je 0x100aca2c
mov eax, dword [esp + 0x14]
test eax, eax
je 0x100aca2c
test esi, esi
je 0x100aca2c
mov edx, dword [esp + 0x84]
push edx
call fcn.1009f440
and eax, 0x8000001f
jns 0x100ac716
dec eax
or eax, 0xffffffe0
inc eax
mov edi, 0x20
sub edi, eax
mov eax, dword [esp + 0x88]
push edi
push eax
push ebp
call fcn.100a0c40
add esp, 0x10
test eax, eax
je 0x100aca2c
mov ecx, dword [esp + 0x80]
add edi, 0x20
push edi
push ecx
push esi
mov dword [ebp + 0xc], 0
mov dword [esp + 0x38], edi
call fcn.100a0c40
add esp, 0xc
test eax, eax
je 0x100aca2c
mov edx, dword [esp + 0x10]
mov eax, dword [esi + 4]
xor ecx, ecx
mov ebp, eax
mov dword [esi + 0xc], ecx
mov edi, dword [edx + 4]
sub ebp, edi
mov dword [esp + 0x58], ecx
mov edx, dword [esi]
mov dword [esp + 0x50], edi
lea ecx, [ebp*4]
mov dword [esp + 0x24], edi
add edx, ecx
mov dword [esp + 0x4c], edx
mov ecx, dword [esi + 8]
mov edx, dword [esp + 0x10]
sub ecx, ebp
mov dword [esp + 0x54], ecx
cmp edi, 1
mov ecx, dword [edx]
mov edx, dword [ecx + edi*4 - 4]
mov dword [esp + 0x18], edx
jne 0x100ac7b3
mov dword [esp + 0x1c], 0
jmp 0x100ac7bb
mov ecx, dword [ecx + edi*4 - 8]
mov dword [esp + 0x1c], ecx
mov edx, dword [esi]
mov ecx, dword [esp + 0x84]
lea eax, [edx + eax*4 - 4]
mov edx, dword [ecx + 0xc]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x80]
mov ecx, dword [eax + 0xc]
lea eax, [ebp + 1]
xor edx, ecx
mov ecx, dword [ebx + 8]
cmp eax, ecx
mov dword [ebx + 0xc], edx
jg 0x100ac7ec
mov eax, ebx
jmp 0x100ac7f6
push eax
push ebx
call fcn.1009f800
add esp, 8
test eax, eax
je 0x100aca2c
mov ecx, dword [ebx]
mov dword [ebx + 4], ebp
lea eax, [edi + 1]
lea edx, [ecx + ebp*4 - 4]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x84], edx
cmp eax, dword [ecx + 8]
jg 0x100ac81e
mov eax, ecx
jmp 0x100ac82c
push eax
mov eax, dword [esp + 0x18]
push eax
call fcn.1009f800
add esp, 8
test eax, eax
je 0x100aca2c
mov ecx, dword [esp + 0x10]
lea edx, [esp + 0x4c]
push ecx
push edx
call fcn.1009fd50
add esp, 8
test eax, eax
jl 0x100ac86f
mov eax, dword [esp + 0x10]
push edi
mov ecx, dword [eax]
mov eax, dword [esp + 0x50]
push ecx
push eax
push eax
call fcn.100a93c0
mov edx, dword [esp + 0x94]
add esp, 0x10
mov dword [edx], 1
jmp 0x100ac872
dec dword [ebx + 4]
mov eax, dword [ebx + 4]
test eax, eax
jne 0x100ac882
mov dword [ebx + 0xc], 0
jmp 0x100ac88a
sub dword [esp + 0x84], 4
dec ebp
test ebp, ebp
jle 0x100ac9c1
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x20], ebp
mov eax, dword [ecx]
mov esi, dword [ecx - 4]
cmp eax, dword [esp + 0x18]
jne 0x100ac8ae
or ebp, 0xffffffff
jmp 0x100ac933
mov edi, dword [esp + 0x18]
xor edx, edx
xor ecx, ecx
or eax, edx
push edx
or ecx, esi
push edi
push eax
push ecx
call fcn.10071420
mov ecx, dword [esp + 0x1c]
mov ebp, eax
imul eax, edi
xor ebx, ebx
sub esi, eax
push ebx
push ecx
push ebx
push ebp
call fcn.10071490
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x78]
xor edi, edi
mov ecx, esi
mov eax, dword [eax - 8]
mov dword [esp + 0x34], eax
or edi, eax
xor eax, eax
or ecx, eax
cmp edx, ecx
jb 0x100ac933
ja 0x100ac8fe
cmp dword [esp + 0x3c], edi
jbe 0x100ac933
mov eax, dword [esp + 0x18]
dec ebp
add esi, eax
cmp esi, eax
jb 0x100ac933
mov ecx, dword [esp + 0x1c]
mov edi, dword [esp + 0x3c]
mov eax, dword [esp + 0x34]
sub edi, ecx
mov dword [esp + 0x3c], edi
mov ecx, esi
sbb edx, ebx
xor edi, edi
or edi, eax
xor eax, eax
or ecx, eax
cmp edx, ecx
ja 0x100ac8fe
jb 0x100ac933
cmp dword [esp + 0x3c], edi
ja 0x100ac8fe
mov ebx, dword [esp + 0x10]
mov edi, dword [esp + 0x14]
mov esi, dword [esp + 0x24]
push ebp
mov edx, dword [ebx]
mov eax, dword [edi]
push esi
push edx
push eax
call fcn.100a9060
mov ecx, dword [edi]
mov dword [ecx + esi*4], eax
mov eax, dword [esp + 0x5c]
sub eax, 4
lea ecx, [esi + 1]
mov dword [esp + 0x5c], eax
mov edx, dword [edi]
push ecx
push edx
push eax
push eax
call fcn.100a93c0
add esp, 0x20
test eax, eax
je 0x100ac990
mov eax, dword [ebx]
push esi
push eax
mov eax, dword [esp + 0x54]
push eax
push eax
dec ebp
call fcn.100a92b0
add esp, 0x10
test eax, eax
je 0x100ac990
mov ecx, dword [esp + 0x78]
inc dword [ecx]
jmp 0x100ac994
mov ecx, dword [esp + 0x78]
mov eax, dword [esp + 0x84]
add ecx, 0xfffffffc
mov dword [esp + 0x78], ecx
mov dword [eax], ebp
sub eax, 4
mov dword [esp + 0x84], eax
mov eax, dword [esp + 0x20]
dec eax
mov dword [esp + 0x20], eax
jne 0x100ac89b
mov esi, dword [esp + 0x28]
mov eax, dword [esi + 4]
test eax, eax
jle 0x100ac9e4
mov ecx, dword [esi]
lea eax, [ecx + eax*4 - 4]
mov edx, dword [eax]
sub eax, 4
test edx, edx
jne 0x100ac9e4
mov edx, dword [esi + 4]
dec edx
mov ecx, edx
mov dword [esi + 4], edx
test ecx, ecx
jg 0x100ac9ce
mov edi, dword [esp + 0x7c]
test edi, edi
je 0x100aca0f
mov ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x80]
push ecx
push esi
mov ebx, dword [eax + 0xc]
push edi
call fcn.100a0d80
mov eax, dword [edi + 4]
add esp, 0xc
test eax, eax
je 0x100aca0f
mov dword [edi + 0xc], ebx
mov edx, dword [esp + 0x88]
push edx
call fcn.100a25d0
add esp, 4
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x64
ret
mov eax, dword [esp + 0x88]
push eax
call fcn.100a25d0
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x64
ret
mov ecx, dword [eax + 4]
test ecx, ecx
jne 0x100aca72
push 0x1ba
push str..crypto_bn_bn_div.c
push 0x67
push 0x8a
push 3
call fcn.1008b9f0
add esp, 0x14
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x64
ret
mov edi, dword [esp + 0x88]
push edi
call fcn.100a24f0
push edi
call fcn.100a2640
push edi
mov dword [esp + 0x1c], eax
call fcn.100a2640
mov esi, eax
push edi
mov dword [esp + 0x44], esi
call fcn.100a2640
mov ebp, eax
mov eax, dword [esp + 0x88]
add esp, 0x10
mov dword [esp + 0x20], ebp
test eax, eax
jne 0x100acab8
push edi
call fcn.100a2640
add esp, 4
test ebp, ebp
mov dword [esp + 0x78], eax
je 0x100ace51
test eax, eax
je 0x100ace51
mov ebx, dword [esp + 0x84]
push ebx
call fcn.1009f440
and eax, 0x8000001f
jns 0x100acae5
dec eax
or eax, 0xffffffe0
inc eax
mov edi, 0x20
sub edi, eax
push edi
push ebx
push ebp
call fcn.100a0c40
add esp, 0x10
test eax, eax
je 0x100ace51
mov ecx, dword [esp + 0x80]
add edi, 0x20
push edi
xor ebx, ebx
push ecx
push esi
mov dword [ebp + 0xc], ebx
mov dword [esp + 0x48], edi
call fcn.100a0c40
add esp, 0xc
test eax, eax
je 0x100ace51
mov ecx, dword [esi + 4]
mov dword [esi + 0xc], ebx
mov eax, dword [ebp + 4]
lea edx, [eax + 1]
cmp ecx, edx
jg 0x100acb7e
mov ecx, dword [esi + 8]
add eax, 2
cmp eax, ecx
jg 0x100acb43
mov eax, esi
jmp 0x100acb4d
push eax
push esi
call fcn.1009f800
add esp, 8
cmp eax, ebx
je 0x100ace51
mov ecx, dword [ebp + 4]
mov eax, dword [esi + 4]
add ecx, 2
cmp eax, ecx
jge 0x100acb73
mov edx, dword [esi]
inc eax
mov dword [edx + eax*4 - 4], ebx
mov ecx, dword [ebp + 4]
add ecx, 2
cmp eax, ecx
jl 0x100acb62
mov edx, dword [ebp + 4]
add edx, 2
mov dword [esi + 4], edx
jmp 0x100acbad
lea eax, [ecx + 1]
mov ecx, dword [esi + 8]
cmp eax, ecx
jg 0x100acb8c
mov eax, esi
jmp 0x100acb96
push eax
push esi
call fcn.1009f800
add esp, 8
cmp eax, ebx
je 0x100ace51
mov eax, dword [esi + 4]
mov ecx, dword [esi]
mov dword [ecx + eax*4], ebx
mov eax, dword [esi + 4]
inc eax
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
mov ebx, dword [ebp + 4]
mov ecx, dword [esi]
mov ebp, dword [ebp]
mov edi, eax
mov dword [esp + 0x28], ebx
sub edi, ebx
cmp ebx, 1
lea edx, [ecx + edi*4]
mov dword [esp + 0x60], edx
mov edx, dword [ebp + ebx*4 - 4]
mov dword [esp + 0x1c], edx
jne 0x100acbde
mov dword [esp + 0x18], 0
jmp 0x100acbe6
mov edx, dword [ebp + ebx*4 - 8]
mov dword [esp + 0x18], edx
lea ebp, [ecx + eax*4 - 4]
mov eax, dword [esp + 0x84]
mov dword [esp + 0x14], ebp
mov edx, dword [eax + 0xc]
mov eax, dword [esp + 0x80]
mov ecx, dword [eax + 0xc]
lea eax, [edi + 1]
xor edx, ecx
mov ecx, dword [esp + 0x78]
mov dword [ecx + 0xc], edx
mov edx, dword [ecx + 8]
cmp eax, edx
jg 0x100acc19
mov eax, ecx
jmp 0x100acc27
mov ecx, dword [esp + 0x78]
push eax
push ecx
call fcn.1009f800
add esp, 8
test eax, eax
je 0x100ace51
mov eax, dword [esp + 0x78]
lea ecx, [edi - 1]
inc ebx
mov dword [esp + 0x2c], ecx
mov edx, dword [eax]
mov dword [eax + 4], ecx
lea eax, [edx + edi*4 - 4]
mov dword [esp + 0x84], eax
mov eax, dword [esp + 0x10]
cmp ebx, dword [eax + 8]
jle 0x100acc64
mov ecx, eax
push ebx
push ecx
call fcn.1009f800
mov ecx, dword [esp + 0x34]
add esp, 8
test eax, eax
je 0x100ace51
mov eax, dword [esp + 0x78]
mov edx, dword [eax + 4]
test edx, edx
jne 0x100acc80
mov dword [eax + 0xc], 0
jmp 0x100acc88
sub dword [esp + 0x84], 4
test ecx, ecx
jle 0x100acdbf
mov dword [esp + 0x24], ecx
mov eax, dword [ebp]
mov ecx, dword [esp + 0x1c]
mov esi, dword [ebp - 4]
cmp eax, ecx
jne 0x100accaa
or ebp, 0xffffffff
jmp 0x100acd31
mov edi, dword [esp + 0x1c]
xor ecx, ecx
xor edx, edx
or eax, ecx
push ecx
or edx, esi
push edi
push eax
push edx
call fcn.10071420
mov ebp, eax
mov eax, dword [esp + 0x18]
mov edx, ebp
xor ebx, ebx
imul edx, edi
push ebx
push eax
push ebx
push ebp
sub esi, edx
call fcn.10071490
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x2c], eax
xor edi, edi
mov eax, dword [ecx - 8]
mov ecx, esi
mov dword [esp + 0x44], eax
or edi, eax
xor eax, eax
or ecx, eax
cmp edx, ecx
jb 0x100acd31
ja 0x100accfc
cmp dword [esp + 0x2c], edi
jbe 0x100acd31
mov eax, dword [esp + 0x1c]
dec ebp
add esi, eax
cmp esi, eax
jb 0x100acd31
mov eax, dword [esp + 0x18]
mov edi, dword [esp + 0x2c]
sub edi, eax
mov eax, dword [esp + 0x44]
mov dword [esp + 0x2c], edi
mov ecx, esi
sbb edx, ebx
xor edi, edi
or edi, eax
xor eax, eax
or ecx, eax
cmp edx, ecx
ja 0x100accfc
jb 0x100acd31
cmp dword [esp + 0x2c], edi
ja 0x100accfc
mov ecx, dword [esp + 0x20]
mov ebx, dword [esp + 0x10]
mov edi, dword [esp + 0x28]
push ebp
mov edx, dword [ecx]
mov eax, dword [ebx]
push edi
push edx
push eax
call fcn.100a9060
mov ecx, dword [ebx]
mov esi, dword [esp + 0x70]
sub esi, 4
mov dword [ecx + edi*4], eax
mov edx, dword [ebx]
lea eax, [edi + 1]
mov dword [esp + 0x70], esi
push eax
push edx
push esi
push esi
call fcn.100a93c0
add esp, 0x20
test eax, eax
je 0x100acd8e
mov eax, dword [esp + 0x20]
push edi
dec ebp
mov ecx, dword [eax]
push ecx
push esi
push esi
call fcn.100a92b0
add esp, 0x10
test eax, eax
je 0x100acd8e
mov ecx, dword [esp + 0x14]
inc dword [ecx]
jmp 0x100acd92
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x84]
mov dword [eax], ebp
sub eax, 4
mov dword [esp + 0x84], eax
mov eax, dword [esp + 0x24]
lea ebp, [ecx - 4]
dec eax
mov dword [esp + 0x14], ebp
mov dword [esp + 0x24], eax
jne 0x100acc94
mov esi, dword [esp + 0x34]
mov eax, dword [esi + 4]
test eax, eax
jle 0x100acde2
mov edx, dword [esi]
lea eax, [edx + eax*4 - 4]
mov ecx, dword [eax]
sub eax, 4
test ecx, ecx
jne 0x100acde2
mov edx, dword [esi + 4]
dec edx
mov ecx, edx
mov dword [esi + 4], edx
test ecx, ecx
jg 0x100acdcc
mov edi, dword [esp + 0x7c]
test edi, edi
je 0x100ace0d
mov eax, dword [esp + 0x3c]
mov edx, dword [esp + 0x80]
push eax
push esi
mov ebx, dword [edx + 0xc]
push edi
call fcn.100a0d80
mov eax, dword [edi + 4]
add esp, 0xc
test eax, eax
je 0x100ace0d
mov dword [edi + 0xc], ebx
mov eax, dword [esp + 0x78]
mov ecx, dword [eax + 4]
test ecx, ecx
jle 0x100ace34
mov edx, dword [eax]
lea ecx, [edx + ecx*4 - 4]
mov edx, dword [ecx]
sub ecx, 4
test edx, edx
jne 0x100ace34
mov esi, dword [eax + 4]
dec esi
mov edx, esi
mov dword [eax + 4], esi
test edx, edx
jg 0x100ace1e
mov eax, dword [esp + 0x88]
push eax
call fcn.100a25d0
add esp, 4
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x64
ret
mov ecx, dword [esp + 0x88]
push ecx
call fcn.100a25d0
add esp, 4
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x64
ret