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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0xb4
mov edi, dword [esp + 0xd4]
mov ebp, dword [edi + 4]
test ebp, ebp
jle 0x4dbd61
mov esi, dword [edi]
mov ebx, dword [esi]
test bl, 1
jne 0x4dbd6f
push 0x24e
push str.external_boringssl_src_crypto_fipsmodule_bn_exponentiation.c
push 0x68
jmp 0x4dbddf
cmp dword [edi + 0xc], 0
je 0x4dbd83
push 0x252
push str.external_boringssl_src_crypto_fipsmodule_bn_exponentiation.c
push 0x6d
jmp 0x4dbddf
mov eax, dword [esp + 0xcc]
cmp dword [eax + 0xc], 0
jne 0x4dbdd3
mov ecx, dword [esp + 0xdc]
mov dword [esp + 0x1c], ecx
mov ecx, dword [esp + 0xd8]
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0xd0]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0xc8]
mov dword [esp + 0x28], ecx
mov ecx, dword [eax]
mov edx, dword [eax + 4]
push ebp
push esi
mov dword [esp + 8], eax
call fcn.004d7620
add esp, 8
test eax, eax
js 0x4dbdfa
push 0x257
push str.external_boringssl_src_crypto_fipsmodule_bn_exponentiation.c
push 0x6b
push 0
push 3
call sym.fastboot.exe_ERR_put_error
add esp, 0x14
xor ebx, ebx
mov eax, ebx
add esp, 0xb4
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [esp + 0x20]
mov eax, dword [eax + 4]
mov ecx, eax
sar ecx, 0x1f
and ecx, eax
mov dword [esp + 4], eax
nop dword [eax]
test eax, eax
jle 0x4dbe25
mov edx, dword [esp + 0x20]
mov edx, dword [edx]
mov edx, dword [edx + eax*4 - 4]
dec eax
test edx, edx
je 0x4dbe10
jmp 0x4dbe3d
cmp dword [esp + 4], 0
jns 0x4dbf91
mov eax, dword [esp + 0x20]
mov eax, dword [eax]
mov edx, dword [eax + ecx*4 - 4]
dec ecx
mov eax, ecx
shl eax, 5
xor ecx, ecx
test edx, edx
setne cl
mov dword [esp + 4], ecx
mov ecx, edx
shr ecx, 0x10
cmp edx, 0x10000
cmovb ecx, edx
mov edx, ecx
mov ecx, 0
setae cl
shl ecx, 4
mov dword [esp + 0x14], ecx
mov ecx, edx
shr edx, 8
cmp ecx, 0x100
cmovb edx, ecx
mov ecx, 0
setae cl
mov dword [esp + 0x10], ecx
mov ecx, edx
mov dword [esp + 8], edx
shr edx, 4
cmp ecx, 0x10
mov ecx, 0
setae cl
mov dword [esp + 0xc], ecx
cmovb edx, dword [esp + 8]
mov ecx, edx
shr ecx, 2
cmp edx, 4
cmovb ecx, edx
mov edx, 0
setae dl
mov dword [esp + 8], edx
xor edx, edx
cmp ecx, 2
setae dl
mov ecx, dword [esp + 4]
or ecx, eax
add ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
lea eax, [ecx + eax*8]
mov ecx, dword [esp + 0xc]
lea eax, [eax + ecx*4]
mov ecx, dword [esp + 8]
lea eax, [eax + ecx*2]
add eax, edx
mov dword [esp + 4], eax
je 0x4dbf91
pxor xmm0, xmm0
movdqu xmmword [esp + 0xa4], xmm0
movdqu xmmword [esp + 0x98], xmm0
movdqu xmmword [esp + 0x88], xmm0
movdqu xmmword [esp + 0x78], xmm0
movdqu xmmword [esp + 0x68], xmm0
movdqu xmmword [esp + 0x58], xmm0
movdqu xmmword [esp + 0x48], xmm0
movdqu xmmword [esp + 0x38], xmm0
mov ebp, dword [esp + 0x24]
cmp byte [ebp + 0x14], 0
jne 0x4dc045
mov ecx, dword [ebp + 8]
mov esi, dword [ebp + 0x10]
cmp ecx, dword [ebp + 0xc]
jne 0x4dc034
lea eax, [ecx + ecx*2]
shr eax, 1
test ecx, ecx
mov ebx, 0x20
cmovne ebx, eax
cmp ebx, ecx
jbe 0x4dc03f
cmp ebx, 0x3fffffff
ja 0x4dc03f
lea eax, [ebx*4]
push eax
push dword [ebp + 4]
call sym.fastboot.exe_OPENSSL_realloc
add esp, 8
test eax, eax
je 0x4dc03f
mov dword [ebp + 4], eax
mov dword [ebp + 0xc], ebx
mov ecx, dword [ebp + 8]
jmp 0x4dc037
xor ebx, 1
cmp ebp, 2
jl 0x4dbfa9
mov eax, 1
cmp ebp, 9
jae 0x4dbfaf
mov ecx, dword [esp + 0x28]
jmp 0x4dc001
mov ecx, dword [esp + 0x28]
jmp 0x4dc009
lea ecx, [ebp - 1]
mov edx, ecx
and edx, 0xfffffff8
lea eax, [edx + 1]
movd xmm1, ebx
pxor xmm0, xmm0
xor edi, edi
movdqu xmm2, xmmword [esi + edi*4 + 4]
por xmm1, xmm2
movdqu xmm2, xmmword [esi + edi*4 + 0x14]
por xmm0, xmm2
add edi, 8
cmp edx, edi
jne 0x4dbfc4
por xmm0, xmm1
pshufd xmm1, xmm0, 0xee
por xmm1, xmm0
pshufd xmm0, xmm1, 0x55
por xmm0, xmm1
movd ebx, xmm0
cmp ecx, edx
mov ecx, dword [esp + 0x28]
je 0x4dc009
or ebx, dword [esi + eax*4]
inc eax
cmp ebp, eax
jne 0x4dc001
test ebx, ebx
je 0x4dc01c
add esp, 0xb4
pop esi
pop edi
pop ebx
pop ebp
jmp sym.fastboot.exe_BN_one
mov dword [ecx + 0xc], 0
mov dword [ecx + 4], 0
mov ebx, 1
jmp 0x4dbded
mov eax, dword [ebp + 4]
mov dword [eax + ecx*4], esi
inc dword [ebp + 8]
jmp 0x4dc045
mov word [ebp + 0x14], 0x101
push ebp
call sym.fastboot.exe_BN_CTX_get
add esp, 4
mov esi, eax
push ebp
call sym.fastboot.exe_BN_CTX_get
add esp, 4
mov dword [esp + 0x34], eax
xor ebx, ebx
mov dword [esp + 0x14], esi
test esi, esi
je 0x4dc48e
mov ecx, 0
test eax, eax
je 0x4dc4bc
mov esi, eax
xor ecx, ecx
mov eax, dword [esp + 0x1c]
test eax, eax
jne 0x4dc098
push ebp
push edi
call sym.fastboot.exe_BN_MONT_CTX_new_consttime
add esp, 8
mov ecx, eax
test eax, eax
je 0x4dc4b0
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], 6
mov edx, dword [esp + 4]
cmp edx, 0x29f
ja 0x4dc0dc
mov dword [esp + 0x10], 5
cmp edx, 0xef
ja 0x4dc0dc
mov dword [esp + 0x10], 4
cmp edx, 0x4f
ja 0x4dc0dc
xor ecx, ecx
cmp edx, 0x18
setae cl
add ecx, ecx
inc ecx
mov dword [esp + 0x10], ecx
push ebp
push eax
mov dword [esp + 0x24], eax
push eax
push dword [esp + 0xc]
push esi
call sym.fastboot.exe_BN_mod_mul_montgomery
add esp, 0x14
xor ebx, ebx
test eax, eax
je 0x4dc4b8
cmp dword [esp + 0x10], 2
jb 0x4dc17b
push ebp
call sym.fastboot.exe_BN_CTX_get
add esp, 4
test eax, eax
je 0x4dc4b8
mov edi, eax
push ebp
push dword [esp + 0x20]
push esi
push esi
push eax
call sym.fastboot.exe_BN_mod_mul_montgomery
add esp, 0x14
test eax, eax
je 0x4dc4b8
mov dword [esp], edi
mov eax, dword [esp + 0x10]
mov ecx, eax
dec cl
mov esi, 1
mov edi, 1
shl edi, cl
push ebp
call sym.fastboot.exe_BN_CTX_get
add esp, 4
mov dword [esp + esi*4 + 0x34], eax
test eax, eax
je 0x4dc4b8
push ebp
push dword [esp + 0x20]
push dword [esp + 8]
push dword [esp + esi*4 + 0x3c]
push eax
call sym.fastboot.exe_BN_mod_mul_montgomery
add esp, 0x14
test eax, eax
je 0x4dc4b8
inc esi
cmp edi, esi
jne 0x4dc143
mov edx, dword [esp + 4]
dec edx
xor ebx, ebx
mov edi, dword [esp + 0x20]
add edx, 0xfffffffb
mov dword [esp + 4], edx
add edx, 5
js 0x4dc1a8
mov eax, dword [edi + 4]
mov ecx, edx
shr ecx, 5
cmp ecx, eax
jae 0x4dc1a8
mov esi, dword [edi]
mov ecx, dword [esi + ecx*4]
bt ecx, edx
jb 0x4dc1d9
test bl, 1
je 0x4dc1c9
push ebp
push dword [esp + 0x20]
mov eax, dword [esp + 0x1c]
push eax
push eax
push eax
call sym.fastboot.exe_BN_mod_mul_montgomery
add esp, 0x14
test eax, eax
je 0x4dc4b6
mov edx, dword [esp + 4]
cmp edx, 0xfffffffb
je 0x4dc492
dec edx
jmp 0x4dc189
cmp dword [esp + 0x10], 2
jb 0x4dc41e
cmp dword [esp + 4], 0xfffffffb
je 0x4dc41e
mov dword [esp + 0x30], ebx
mov dword [esp], 0
test edx, edx
jle 0x4dc21c
mov ecx, dword [esp + 4]
lea ebp, [ecx + 4]
mov edi, ebp
shr edi, 5
cmp edi, eax
jae 0x4dc21c
mov edi, dword [esi + edi*4]
xor ecx, ecx
bt edi, ebp
setb cl
mov dword [esp], ecx
mov ecx, dword [esp]
add ecx, ecx
inc ecx
mov dword [esp + 8], ecx
cmp dword [esp + 0x10], 3
jb 0x4dc3b2
cmp edx, 2
jl 0x4dc3b2
mov ecx, dword [esp + 4]
lea ebp, [ecx + 3]
mov ecx, ebp
shr ecx, 5
mov dword [esp + 0x18], 0
cmp ecx, eax
jae 0x4dc261
mov edi, dword [esi + ecx*4]
xor ecx, ecx
bt edi, ebp
setb cl
mov dword [esp + 0x18], ecx
mov cl, 2
mov edi, dword [esp]
mov ebx, edi
sub cl, bl
mov ebx, dword [esp + 8]
mov ebp, ebx
shl ebp, cl
or ebp, 1
cmp dword [esp + 0x18], 0
cmovne ebx, ebp
mov dword [esp + 8], ebx
mov ecx, 2
cmovne edi, ecx
mov dword [esp], edi
cmp dword [esp + 0x10], 4
jb 0x4dc3b2
cmp edx, 3
jl 0x4dc3b2
mov ecx, dword [esp + 4]
lea ebp, [ecx + 2]
mov dword [esp + 0x2c], ebp
shr ebp, 5
mov dword [esp + 0x18], 0
cmp ebp, eax
jae 0x4dc2cd
mov edi, dword [esi + ebp*4]
xor ecx, ecx
mov ebp, dword [esp + 0x2c]
bt edi, ebp
setb cl
mov dword [esp + 0x18], ecx
mov ecx, dword [esp]
xor cl, 3
mov edi, dword [esp + 8]
mov ebp, edi
shl ebp, cl
or ebp, 1
cmp dword [esp + 0x18], 0
cmovne edi, ebp
mov dword [esp + 8], edi
mov ecx, 3
mov ebp, dword [esp]
cmovne ebp, ecx
mov dword [esp], ebp
cmp dword [esp + 0x10], 5
jb 0x4dc3b2
cmp edx, 4
jl 0x4dc3b2
mov ecx, dword [esp + 4]
lea ebp, [ecx + 1]
mov dword [esp + 0x2c], ebp
shr ebp, 5
mov dword [esp + 0x18], 0
cmp ebp, eax
jae 0x4dc339
mov edi, dword [esi + ebp*4]
xor ecx, ecx
mov ebp, dword [esp + 0x2c]
bt edi, ebp
setb cl
mov dword [esp + 0x18], ecx
mov cl, 4
mov ebx, dword [esp]
sub cl, bl
mov edi, dword [esp + 8]
mov ebp, edi
shl ebp, cl
or ebp, 1
cmp dword [esp + 0x18], 0
cmovne edi, ebp
mov dword [esp + 8], edi
mov ecx, 4
cmovne ebx, ecx
mov dword [esp], ebx
cmp dword [esp + 0x10], 6
jb 0x4dc3b2
cmp edx, 5
jl 0x4dc3b2
mov ecx, dword [esp + 4]
shr ecx, 5
xor ebp, ebp
cmp ecx, eax
jae 0x4dc38c
mov eax, dword [esi + ecx*4]
xor edx, edx
mov ecx, dword [esp + 4]
bt eax, ecx
setb dl
mov ebp, edx
mov cl, 5
mov edx, dword [esp]
sub cl, dl
mov esi, dword [esp + 8]
mov eax, esi
shl eax, cl
or eax, 1
test ebp, ebp
cmovne esi, eax
mov dword [esp + 8], esi
mov eax, 5
cmovne edx, eax
mov dword [esp], edx
test byte [esp + 0x30], 1
mov ebp, dword [esp + 0x24]
mov edi, dword [esp + 8]
jne 0x4dc42f
and edi, 0xfffffffe
mov esi, dword [esp + edi*2 + 0x34]
cmp esi, dword [esp + 0x14]
je 0x4dc474
push dword [esi + 4]
push dword [esp + 0x18]
call fcn.004d4f40
add esp, 8
test eax, eax
je 0x4dc4e7
mov eax, dword [esi + 4]
lea ecx, [eax*4]
test ecx, ecx
je 0x4dc40b
push ecx
push dword [esi]
mov eax, dword [esp + 0x1c]
push dword [eax]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
add esp, 0xc
mov eax, dword [esi + 4]
mov ecx, dword [esp + 0x14]
mov dword [ecx + 4], eax
mov eax, dword [esi + 0xc]
mov dword [ecx + 0xc], eax
mov ebp, dword [esp + 0x24]
jmp 0x4dc474
mov dword [esp], 0
mov edi, 1
test bl, 1
je 0x4dc3c1
mov esi, 0xffffffff
mov eax, dword [esp + 0x1c]
push ebp
push eax
mov eax, dword [esp + 0x1c]
push eax
push eax
push eax
call sym.fastboot.exe_BN_mod_mul_montgomery
add esp, 0x14
xor ebx, ebx
test eax, eax
je 0x4dc4b8
inc esi
cmp dword [esp], esi
mov eax, dword [esp + 0x1c]
jne 0x4dc438
and edi, 0xfffffffe
push ebp
push eax
push dword [esp + edi*2 + 0x3c]
mov eax, dword [esp + 0x20]
push eax
push eax
call sym.fastboot.exe_BN_mod_mul_montgomery
add esp, 0x14
test eax, eax
je 0x4dc4b8
mov edx, dword [esp + 4]
sub edx, dword [esp]
cmp edx, 0xfffffffb
mov edi, dword [esp + 0x20]
je 0x4dc492
add edx, 4
mov bl, 1
jmp 0x4dc186
xor ecx, ecx
jmp 0x4dc4bc
push ebp
push dword [esp + 0x20]
push dword [esp + 0x1c]
push dword [esp + 0x34]
call sym.fastboot.exe_BN_from_montgomery
add esp, 0x10
xor ebx, ebx
test eax, eax
setne bl
jmp 0x4dc4b8
xor ebx, ebx
xor ecx, ecx
jmp 0x4dc4bc
xor ebx, ebx
mov ecx, dword [esp + 0xc]
push ecx
call sym.fastboot.exe_BN_MONT_CTX_free
add esp, 4
cmp byte [ebp + 0x14], 0
jne 0x4dbded
mov eax, dword [ebp + 4]
mov ecx, dword [ebp + 8]
lea edx, [ecx - 1]
mov dword [ebp + 8], edx
mov eax, dword [eax + ecx*4 - 4]
mov dword [ebp + 0x10], eax
jmp 0x4dbded
xor ebx, ebx
mov ebp, dword [esp + 0x24]
jmp 0x4dc4b8