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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x80
mov edi, dword [ebp + 0x14]
mov eax, dword [0x7024bc]
xor eax, ebp
mov dword [esp + 0x78], eax
pcmpeqd xmm0, xmm0
movdqa xmmword [esp + 0x60], xmm0
mov dword [esp + 0x70], 0xffffffff
movdqa xmmword [esp + 0x40], xmm0
mov dword [esp + 0x50], 0xffffffff
mov esi, dword [edi + 4]
test esi, esi
jle 0x4e376d
mov eax, dword [edi]
mov ebx, dword [eax]
test bl, 1
jne 0x4e377b
push 0x392
push str..._.._third_party_boringssl_src_crypto_fipsmodule_bn_exponentiation.c
push 0x68
jmp 0x4e37c5
cmp dword [edi + 0xc], 0
je 0x4e378f
push 0x396
push str..._.._third_party_boringssl_src_crypto_fipsmodule_bn_exponentiation.c
push 0x6d
jmp 0x4e37c5
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 0xc], 0
jne 0x4e37b9
mov ecx, dword [ecx]
mov dword [esp + 4], eax
mov eax, dword [ebp + 0xc]
mov edx, dword [eax + 4]
push esi
push dword [esp + 8]
call fcn.004df8a0
mov ecx, dword [esp + 0xc]
add esp, 8
test eax, eax
js 0x4e37e8
push 0x39a
push str..._.._third_party_boringssl_src_crypto_fipsmodule_bn_exponentiation.c
push 0x6b
push 0
push 3
call fcn.004d86c0
add esp, 0x14
xor ebx, ebx
mov ecx, dword [esp + 0x78]
xor ecx, ebp
call fcn.0064180a
mov eax, ebx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 4]
test eax, eax
je 0x4e393b
mov dword [esp + 0xc], eax
mov eax, dword [ebp + 0x1c]
xor ecx, ecx
test eax, eax
jne 0x4e3819
push dword [ebp + 0x18]
push edi
call fcn.004e2b50
add esp, 8
mov ecx, eax
test eax, eax
je 0x4e39a2
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
mov edx, dword [eax + 0x18]
mov ecx, 6
mov eax, dword [esp + 0xc]
cmp eax, 0x1d
jg 0x4e3856
mov ecx, 5
cmp eax, 9
jg 0x4e3856
mov ecx, 4
cmp eax, 2
jg 0x4e3856
xor eax, eax
cmp dword [esp + 0xc], 0
setg al
lea ecx, [eax + eax]
add ecx, 1
mov edi, 1
shl edi, cl
mov ebx, edx
mov dword [esp + 0x34], ecx
shl ebx, cl
mov dword [esp + 4], edx
lea esi, [edx + edx]
cmp esi, edi
mov dword [esp + 0x3c], edi
cmovg edi, esi
add edi, ebx
lea eax, [edi*4 + 0x40]
shl edi, 2
push eax
call fcn.005166d0
add esp, 4
test eax, eax
je 0x4e398d
mov dword [esp + 0x24], eax
and eax, 0xffffffc0
add eax, 0x40
test edi, edi
mov dword [esp + 0x20], eax
je 0x4e38b4
push edi
push 0
push eax
call fcn.00645dd0
mov eax, dword [esp + 0x2c]
add esp, 0xc
lea eax, [eax + ebx*4]
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 4]
lea eax, [eax + ecx*4]
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], 0
mov dword [esp + 0x64], 0
mov dword [esp + 0x48], ecx
mov dword [esp + 0x68], ecx
mov dword [esp + 0x4c], 0
mov dword [esp + 0x6c], 0
mov dword [esp + 0x50], 2
mov dword [esp + 0x70], 2
mov ebx, dword [esp + 0x18]
mov eax, dword [ebx + 0x18]
test eax, eax
mov dword [esp + 0x14], esi
jle 0x4e391b
mov ecx, dword [ebx + 0x14]
cmp dword [ecx + eax*4 - 4], 0
js 0x4e39b7
lea eax, [esp + 0x60]
mov esi, dword [ebp + 0x18]
push esi
push ebx
push ebx
push eax
call fcn.004e2f40
add esp, 0x10
test eax, eax
jne 0x4e3a0f
jmp 0x4e3a56
xor ebx, 1
cmp esi, 2
jl 0x4e3b82
lea edx, [esi - 1]
mov eax, 1
cmp edx, 8
jb 0x4e3b78
mov dword [esp + 0xc], edx
mov eax, edx
and eax, 0xfffffff8
movd xmm0, ebx
lea ebx, [eax - 8]
mov edi, ebx
shr edi, 3
add edi, 1
mov edx, edi
and edx, 3
cmp ebx, 0x18
jae 0x4e3ac1
pxor xmm1, xmm1
xor ebx, ebx
mov ecx, dword [esp + 4]
jmp 0x4e3b28
xor ebx, ebx
xor esi, esi
mov dword [esp + 0x20], 0
mov eax, dword [esp + 0x1c]
jmp 0x4e45b1
xor ebx, ebx
xor eax, eax
xor esi, esi
xor edi, edi
mov dword [esp + 0x20], 0
jmp 0x4e45b1
lea ecx, [esp + 0x60]
push eax
push ecx
call fcn.004de700
add esp, 8
test eax, eax
je 0x4e3a56
mov eax, dword [ebx + 0x14]
xor ecx, ecx
sub ecx, dword [eax]
mov eax, dword [esp + 0x60]
mov dword [eax], ecx
mov ecx, dword [ebx + 0x18]
cmp ecx, 2
jl 0x4e3a00
mov eax, 1
mov ecx, dword [ebx + 0x14]
mov ecx, dword [ecx + eax*4]
not ecx
mov edx, dword [esp + 0x60]
mov dword [edx + eax*4], ecx
add eax, 1
mov ecx, dword [ebx + 0x18]
cmp eax, ecx
jl 0x4e39e7
mov dword [esp + 0x64], ecx
mov dword [esp + 0x6c], 0
mov esi, dword [ebp + 0x18]
lea eax, [esp + 0x40]
push esi
push ebx
push ebx
push dword [ebp + 0xc]
push eax
call fcn.004e2d80
add esp, 0x14
test eax, eax
je 0x4e4410
cmp dword [esp + 0x6c], 0
mov dword [esp + 0x28], edi
je 0x4e3a65
push 0x13c
push str..._.._third_party_boringssl_src_crypto_fipsmodule_bn_bn.c
push 0x6d
push 0
push 3
call fcn.004d86c0
add esp, 0x14
mov edx, dword [esp + 4]
jmp 0x4e3d12
xor ebx, ebx
mov eax, dword [esp + 0x1c]
mov esi, dword [esp + 0x24]
jmp 0x4e45b1
mov esi, dword [esp + 0x64]
mov ecx, esi
mov edx, dword [esp + 4]
sub ecx, edx
jbe 0x4e3cd8
mov edi, dword [esp + 0x60]
xor eax, eax
mov dword [esp + 8], ecx
mov ecx, edx
cmp dword [esp + 8], 8
jb 0x4e3caa
mov dword [esp + 0x10], edi
mov ecx, dword [esp + 8]
and ecx, 0xfffffff8
lea eax, [ecx - 8]
mov edi, eax
shr edi, 3
add edi, 1
mov edx, edi
and edx, 3
cmp eax, 0x18
jae 0x4e3bd7
pxor xmm0, xmm0
xor ebx, ebx
pxor xmm1, xmm1
jmp 0x4e3c4b
and edi, 0xfffffffc
neg edi
pxor xmm1, xmm1
xor ebx, ebx
mov ecx, dword [esp + 4]
movdqu xmm2, xmmword [ecx + ebx*4 + 4]
por xmm2, xmm0
movdqu xmm0, xmmword [ecx + ebx*4 + 0x14]
por xmm0, xmm1
movdqu xmm1, xmmword [ecx + ebx*4 + 0x24]
movdqu xmm3, xmmword [ecx + ebx*4 + 0x34]
movdqu xmm4, xmmword [ecx + ebx*4 + 0x44]
por xmm4, xmm1
por xmm4, xmm2
movdqu xmm2, xmmword [ecx + ebx*4 + 0x54]
por xmm2, xmm3
por xmm2, xmm0
movdqu xmm0, xmmword [ecx + ebx*4 + 0x64]
por xmm0, xmm4
movdqu xmm1, xmmword [ecx + ebx*4 + 0x74]
por xmm1, xmm2
add ebx, 0x20
add edi, 4
jne 0x4e3ad0
test edx, edx
je 0x4e3b51
neg edx
lea edi, [ebx*4]
or edi, 4
movdqu xmm2, xmmword [ecx + edi]
por xmm0, xmm2
movdqu xmm2, xmmword [ecx + edi + 0x10]
por xmm1, xmm2
add ebx, 8
inc edx
jne 0x4e3b2e
por xmm0, xmm1
pshufd xmm1, xmm0, 0xee
por xmm1, xmm0
pshufd xmm0, xmm1, 0x55
por xmm0, xmm1
movd ebx, xmm0
cmp dword [esp + 0xc], eax
je 0x4e3b82
or eax, 1
mov ecx, dword [esp + 4]
or ebx, dword [ecx + eax*4]
add eax, 1
cmp esi, eax
jne 0x4e3b78
test ebx, ebx
je 0x4e3bbc
push 1
mov esi, dword [ebp + 8]
push esi
call fcn.004de700
add esp, 8
test eax, eax
je 0x4e37d1
mov dword [esi + 0xc], 0
mov eax, dword [esi]
mov dword [eax], 1
mov dword [esi + 4], 1
mov ebx, 1
jmp 0x4e37d3
mov eax, dword [ebp + 8]
mov dword [eax + 0xc], 0
mov dword [eax + 4], 0
mov ebx, 1
jmp 0x4e37d3
mov eax, dword [esp + 4]
mov ebx, dword [esp + 0x10]
lea eax, [ebx + eax*4]
add eax, 0x70
and edi, 0xfffffffc
neg edi
pxor xmm0, xmm0
xor ebx, ebx
pxor xmm1, xmm1
movdqu xmm2, xmmword [eax + ebx*4 - 0x70]
por xmm2, xmm0
movdqu xmm0, xmmword [eax + ebx*4 - 0x60]
por xmm0, xmm1
movdqu xmm1, xmmword [eax + ebx*4 - 0x50]
movdqu xmm3, xmmword [eax + ebx*4 - 0x40]
movdqu xmm4, xmmword [eax + ebx*4 - 0x30]
por xmm4, xmm1
por xmm4, xmm2
movdqu xmm2, xmmword [eax + ebx*4 - 0x20]
por xmm2, xmm3
por xmm2, xmm0
movdqu xmm0, xmmword [eax + ebx*4 - 0x10]
por xmm0, xmm4
movdqu xmm1, xmmword [eax + ebx*4]
por xmm1, xmm2
add ebx, 0x20
add edi, 4
jne 0x4e3bf4
test edx, edx
mov edi, dword [esp + 0x10]
je 0x4e3c76
add ebx, dword [esp + 4]
lea eax, [edi + ebx*4]
add eax, 0x10
neg edx
movdqu xmm2, xmmword [eax - 0x10]
por xmm0, xmm2
movdqu xmm2, xmmword [eax]
por xmm1, xmm2
add eax, 0x20
inc edx
jne 0x4e3c5f
por xmm0, xmm1
pshufd xmm1, xmm0, 0xee
por xmm1, xmm0
pshufd xmm0, xmm1, 0x55
por xmm0, xmm1
movd eax, xmm0
cmp dword [esp + 8], ecx
jne 0x4e3ca0
mov ebx, dword [esp + 0x18]
mov edx, dword [esp + 4]
jmp 0x4e3cb4
mov edx, dword [esp + 4]
add ecx, edx
mov ebx, dword [esp + 0x18]
or eax, dword [edi + ecx*4]
add ecx, 1
cmp esi, ecx
jne 0x4e3caa
mov esi, edx
test eax, eax
je 0x4e3cd8
push 0x143
push str..._.._third_party_boringssl_src_crypto_fipsmodule_bn_bn.c
push 0x66
push 0
push 3
call fcn.004d86c0
mov edx, dword [esp + 0x18]
add esp, 0x14
jmp 0x4e3d12
lea eax, [edx*4]
test eax, eax
je 0x4e3cf6
push eax
push 0
push dword [esp + 0x28]
call fcn.00645dd0
mov edx, dword [esp + 0x10]
add esp, 0xc
shl esi, 2
test esi, esi
je 0x4e3d12
push esi
push dword [esp + 0x64]
push dword [esp + 0x28]
call fcn.006452d0
mov edx, dword [esp + 0x10]
add esp, 0xc
cmp dword [esp + 0x4c], 0
je 0x4e3d87
push 0x13c
push str..._.._third_party_boringssl_src_crypto_fipsmodule_bn_bn.c
push 0x6d
push 0
push 3
call fcn.004d86c0
add esp, 0x14
cmp dword [esp + 0x34], 2
mov edi, dword [esp + 0x28]
jb 0x4e42b4
lea ecx, [esp + 0x60]
push dword [ebp + 0x18]
push ebx
lea eax, [esp + 0x48]
push eax
push eax
push ecx
call fcn.004e2d80
add esp, 0x14
test eax, eax
je 0x4e4410
cmp dword [esp + 0x6c], 0
je 0x4e3ddb
push 0x13c
push str..._.._third_party_boringssl_src_crypto_fipsmodule_bn_bn.c
push 0x6d
push 0
push 3
call fcn.004d86c0
add esp, 0x14
mov edx, dword [esp + 4]
jmp 0x4e40ab
mov esi, dword [esp + 0x44]
mov ecx, esi
sub ecx, edx
jbe 0x4e3f2b
mov edi, dword [esp + 0x40]
xor eax, eax
mov dword [esp + 8], ecx
mov ecx, edx
cmp dword [esp + 8], 8
jb 0x4e3f0a
mov dword [esp + 0x10], edi
mov ecx, dword [esp + 8]
and ecx, 0xfffffff8
lea eax, [ecx - 8]
mov edi, eax
shr edi, 3
add edi, 1
mov edx, edi
and edx, 3
cmp eax, 0x18
jae 0x4e3e37
pxor xmm0, xmm0
xor ebx, ebx
pxor xmm1, xmm1
jmp 0x4e3eab
mov esi, dword [esp + 0x64]
mov ecx, esi
mov edx, dword [esp + 4]
sub ecx, edx
jbe 0x4e406c
mov edi, dword [esp + 0x60]
xor eax, eax
mov dword [esp + 8], ecx
mov ecx, edx
cmp dword [esp + 8], 8
jb 0x4e403e
mov dword [esp + 0x10], edi
mov ecx, dword [esp + 8]
and ecx, 0xfffffff8
lea eax, [ecx - 8]
mov edi, eax
shr edi, 3
add edi, 1
mov edx, edi
and edx, 3
cmp eax, 0x18
jae 0x4e3f67
pxor xmm0, xmm0
xor ebx, ebx
pxor xmm1, xmm1
jmp 0x4e3fdb
mov eax, dword [esp + 4]
mov ebx, dword [esp + 0x10]
lea eax, [ebx + eax*4]
add eax, 0x70
and edi, 0xfffffffc
neg edi
pxor xmm0, xmm0
xor ebx, ebx
pxor xmm1, xmm1
movdqu xmm2, xmmword [eax + ebx*4 - 0x70]
por xmm2, xmm0
movdqu xmm0, xmmword [eax + ebx*4 - 0x60]
por xmm0, xmm1
movdqu xmm1, xmmword [eax + ebx*4 - 0x50]
movdqu xmm3, xmmword [eax + ebx*4 - 0x40]
movdqu xmm4, xmmword [eax + ebx*4 - 0x30]
por xmm4, xmm1
por xmm4, xmm2
movdqu xmm2, xmmword [eax + ebx*4 - 0x20]
por xmm2, xmm3
por xmm2, xmm0
movdqu xmm0, xmmword [eax + ebx*4 - 0x10]
por xmm0, xmm4
movdqu xmm1, xmmword [eax + ebx*4]
por xmm1, xmm2
add ebx, 0x20
add edi, 4
jne 0x4e3e54
test edx, edx
mov edi, dword [esp + 0x10]
je 0x4e3ed6
add ebx, dword [esp + 4]
lea eax, [edi + ebx*4]
add eax, 0x10
neg edx
movdqu xmm2, xmmword [eax - 0x10]
por xmm0, xmm2
movdqu xmm2, xmmword [eax]
por xmm1, xmm2
add eax, 0x20
inc edx
jne 0x4e3ebf
por xmm0, xmm1
pshufd xmm1, xmm0, 0xee
por xmm1, xmm0
pshufd xmm0, xmm1, 0x55
por xmm0, xmm1
movd eax, xmm0
cmp dword [esp + 8], ecx
jne 0x4e3f00
mov ebx, dword [esp + 0x18]
mov edx, dword [esp + 4]
jmp 0x4e3f14
mov edx, dword [esp + 4]
add ecx, edx
mov ebx, dword [esp + 0x18]
or eax, dword [edi + ecx*4]
add ecx, 1
cmp esi, ecx
jne 0x4e3f0a
mov esi, edx
test eax, eax
je 0x4e3f2b
push 0x143
push str..._.._third_party_boringssl_src_crypto_fipsmodule_bn_bn.c
push 0x66
jmp 0x4e3d25
mov eax, dword [esp + 0x20]
lea edi, [eax + edx*4]
lea eax, [edx*4]
test eax, eax
je 0x4e3f49
push eax
push 0
push edi
call fcn.00645dd0
add esp, 0xc
shl esi, 2
test esi, esi
je 0x4e3d31
push esi
push dword [esp + 0x44]
push edi
call fcn.006452d0
add esp, 0xc
jmp 0x4e3d31
mov eax, dword [esp + 4]
mov ebx, dword [esp + 0x10]
lea eax, [ebx + eax*4]
add eax, 0x70
and edi, 0xfffffffc
neg edi
pxor xmm0, xmm0
xor ebx, ebx
pxor xmm1, xmm1
movdqu xmm2, xmmword [eax + ebx*4 - 0x70]
por xmm2, xmm0
movdqu xmm0, xmmword [eax + ebx*4 - 0x60]
por xmm0, xmm1
movdqu xmm1, xmmword [eax + ebx*4 - 0x50]
movdqu xmm3, xmmword [eax + ebx*4 - 0x40]
movdqu xmm4, xmmword [eax + ebx*4 - 0x30]
por xmm4, xmm1
por xmm4, xmm2
movdqu xmm2, xmmword [eax + ebx*4 - 0x20]
por xmm2, xmm3
por xmm2, xmm0
movdqu xmm0, xmmword [eax + ebx*4 - 0x10]
por xmm0, xmm4
movdqu xmm1, xmmword [eax + ebx*4]
por xmm1, xmm2
add ebx, 0x20
add edi, 4
jne 0x4e3f84
test edx, edx
je 0x4e4006
add ebx, dword [esp + 4]
mov eax, dword [esp + 0x10]
lea eax, [eax + ebx*4]
add eax, 0x10
neg edx
movdqu xmm2, xmmword [eax - 0x10]
por xmm0, xmm2
movdqu xmm2, xmmword [eax]
por xmm1, xmm2
add eax, 0x20
inc edx
jne 0x4e3fef
por xmm0, xmm1
pshufd xmm1, xmm0, 0xee
por xmm1, xmm0
pshufd xmm0, xmm1, 0x55
por xmm0, xmm1
movd eax, xmm0
cmp dword [esp + 8], ecx
jne 0x4e4030
mov ebx, dword [esp + 0x18]
mov edx, dword [esp + 4]
jmp 0x4e4048
mov edx, dword [esp + 4]
add ecx, edx
mov ebx, dword [esp + 0x18]
mov edi, dword [esp + 0x10]
or eax, dword [edi + ecx*4]
add ecx, 1
cmp esi, ecx
jne 0x4e403e
mov esi, edx
test eax, eax
je 0x4e406c
push 0x143
push str..._.._third_party_boringssl_src_crypto_fipsmodule_bn_bn.c
push 0x66
push 0
push 3
call fcn.004d86c0
mov edx, dword [esp + 0x18]
add esp, 0x14
jmp 0x4e40ab
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x14]
lea edi, [eax + ecx*4]
lea eax, [edx*4]
test eax, eax
je 0x4e4092
push eax
push 0
push edi
call fcn.00645dd0
mov edx, dword [esp + 0x10]
add esp, 0xc
shl esi, 2
test esi, esi
je 0x4e40ab
push esi
push dword [esp + 0x64]
push edi
call fcn.006452d0
mov edx, dword [esp + 0x10]
add esp, 0xc
mov eax, dword [esp + 0x3c]
cmp eax, 4
mov ecx, 4
cmova ecx, eax
mov dword [esp + 0x14], ecx
lea eax, [edx*4]
lea ecx, [edx + 0x1c]
mov dword [esp + 0x38], ecx
mov esi, 3
mov edi, dword [esp + 0x28]
mov dword [esp + 0x10], eax
jmp 0x4e410c
mov edi, esi
push 0x13c
push str..._.._third_party_boringssl_src_crypto_fipsmodule_bn_bn.c
push 0x6d
push 0
push 3
call fcn.004d86c0
add esp, 0x14
mov esi, edi
add esi, 1
cmp esi, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov edi, dword [esp + 0x28]
je 0x4e42b4
push dword [ebp + 0x18]
push ebx
lea ecx, [esp + 0x68]
push ecx
lea eax, [esp + 0x4c]
push eax
push ecx
call fcn.004e2d80
add esp, 0x14
test eax, eax
je 0x4e4410
cmp dword [esp + 0x6c], 0
jne 0x4e40db
mov ebx, dword [esp + 0x64]
mov edx, ebx
mov ecx, dword [esp + 4]
sub edx, ecx
jbe 0x4e4274
mov eax, dword [esp + 0x60]
mov dword [esp + 8], eax
xor eax, eax
cmp edx, 8
jb 0x4e4249
mov dword [esp + 0x2c], esi
mov dword [esp + 0x30], edx
mov ecx, edx
and ecx, 0xfffffff8
lea edx, [ecx - 8]
mov esi, edx
shr esi, 3
add esi, 1
mov eax, esi
and eax, 3
cmp edx, 0x18
jae 0x4e4185
pxor xmm0, xmm0
xor edx, edx
pxor xmm1, xmm1
jmp 0x4e41f6
mov edx, dword [esp + 0x38]
mov edi, dword [esp + 8]
lea edi, [edi + edx*4]
and esi, 0xfffffffc
neg esi
pxor xmm0, xmm0
xor edx, edx
pxor xmm1, xmm1
movdqu xmm2, xmmword [edi + edx*4 - 0x70]
por xmm2, xmm0
movdqu xmm0, xmmword [edi + edx*4 - 0x60]
por xmm0, xmm1
movdqu xmm1, xmmword [edi + edx*4 - 0x50]
movdqu xmm3, xmmword [edi + edx*4 - 0x40]
movdqu xmm4, xmmword [edi + edx*4 - 0x30]
por xmm4, xmm1
por xmm4, xmm2
movdqu xmm2, xmmword [edi + edx*4 - 0x20]
por xmm2, xmm3
por xmm2, xmm0
movdqu xmm0, xmmword [edi + edx*4 - 0x10]
por xmm0, xmm4
movdqu xmm1, xmmword [edi + edx*4]
por xmm1, xmm2
add edx, 0x20
add esi, 4
jne 0x4e419f
test eax, eax
je 0x4e4221
add edx, dword [esp + 4]
mov esi, dword [esp + 8]
lea edx, [esi + edx*4]
add edx, 0x10
neg eax
movdqu xmm2, xmmword [edx - 0x10]
por xmm0, xmm2
movdqu xmm2, xmmword [edx]
por xmm1, xmm2
add edx, 0x20
inc eax
jne 0x4e420a
por xmm0, xmm1
pshufd xmm1, xmm0, 0xee
por xmm1, xmm0
pshufd xmm0, xmm1, 0x55
por xmm0, xmm1
movd eax, xmm0
cmp dword [esp + 0x30], ecx
mov esi, dword [esp + 0x2c]
je 0x4e4257
add ecx, dword [esp + 4]
mov edx, dword [esp + 8]
or eax, dword [edx + ecx*4]
add ecx, 1
cmp ebx, ecx
jne 0x4e424d
mov ecx, dword [esp + 4]
mov ebx, ecx
test eax, eax
je 0x4e4274
mov edi, esi
push 0x143
push str..._.._third_party_boringssl_src_crypto_fipsmodule_bn_bn.c
push 0x66
jmp 0x4e40e9
mov edi, esi
mov eax, esi
imul eax, ecx
mov ecx, dword [esp + 0x20]
lea esi, [ecx + eax*4]
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4e4296
push eax
push 0
push esi
call fcn.00645dd0
add esp, 0xc
shl ebx, 2
test ebx, ebx
je 0x4e40f5
push ebx
push dword [esp + 0x64]
push esi
call fcn.006452d0
add esp, 0xc
jmp 0x4e40f5
mov ecx, dword [esp + 0xc]
shl ecx, 5
lea eax, [ecx - 1]
mov dword [esp + 0x14], eax
cdq
idiv dword [esp + 0x34]
test edx, edx
js 0x4e432b
add ecx, 0xfffffffe
mov dword [esp + 0xc], ecx
lea eax, [edx + 1]
xor esi, esi
mov ecx, dword [esp + 0x14]
jmp 0x4e42e9
or esi, edi
add ecx, 0xffffffff
add eax, 0xffffffff
test eax, eax
jle 0x4e4317
mov edi, esi
add edi, esi
mov esi, 0
test ecx, ecx
js 0x4e42dd
mov ebx, ecx
shr ebx, 5
mov esi, dword [ebp + 0x10]
cmp ebx, dword [esi + 4]
mov esi, 0
jae 0x4e42dd
mov esi, dword [ebp + 0x10]
mov esi, dword [esi]
mov esi, dword [esi + ebx*4]
shr esi, cl
and esi, 1
jmp 0x4e42dd
mov dword [esp + 0x2c], esi
mov eax, dword [esp + 0xc]
sub eax, edx
mov dword [esp + 0x14], eax
mov edi, dword [esp + 0x28]
jmp 0x4e4333
mov dword [esp + 0x2c], 0
lea eax, [esp + 0x60]
mov esi, dword [esp + 4]
push esi
push eax
call fcn.004de700
add esp, 8
test eax, eax
je 0x4e4410
lea edi, [esi*4]
test edi, edi
je 0x4e436b
push edi
push 0
push dword [esp + 0x68]
call fcn.00645dd0
mov esi, dword [esp + 0x10]
add esp, 0xc
mov eax, dword [esp + 0x2c]
not eax
mov dword [esp + 0x30], eax
and esi, 0xfffffffe
mov dword [esp + 0x10], esi
mov dword [esp + 0xc], 0
mov edx, dword [esp + 0x20]
mov esi, edi
mov dword [esp + 8], edi
mov ecx, dword [esp + 0x14]
jmp 0x4e43a7
mov eax, dword [esp + 0xc]
add eax, 1
add edx, esi
mov dword [esp + 0xc], eax
cmp eax, dword [esp + 0x3c]
je 0x4e4419
cmp dword [esp + 4], 0
jle 0x4e4394
mov edi, dword [esp + 0xc]
xor edi, dword [esp + 0x2c]
add edi, 0xffffffff
and edi, dword [esp + 0x30]
sar edi, 0x1f
xor eax, eax
cmp dword [esp + 4], 1
mov ecx, dword [esp + 0x10]
je 0x4e43f1
xor eax, eax
nop
mov esi, dword [edx + eax*4]
and esi, edi
mov ebx, dword [esp + 0x60]
or dword [ebx + eax*4], esi
mov esi, dword [edx + eax*4 + 4]
and esi, edi
mov ebx, dword [esp + 0x60]
or dword [ebx + eax*4 + 4], esi
add eax, 2
cmp ecx, eax
jne 0x4e43d0
test byte [esp + 4], 1
mov esi, dword [esp + 8]
mov ecx, dword [esp + 0x14]
je 0x4e4394
and edi, dword [edx + eax*4]
mov esi, dword [esp + 0x60]
or dword [esi + eax*4], edi
mov esi, dword [esp + 8]
jmp 0x4e4394
mov eax, dword [esp + 0x1c]
jmp 0x4e45ab
mov eax, dword [esp + 4]
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x34]
mov edx, eax
neg edx
mov dword [esp + 0x2c], edx
test ecx, ecx
js 0x4e45de
mov dword [esp + 0x14], ecx
sub ecx, eax
mov dword [esp + 0x38], ecx
xor edi, edi
mov dword [esp + 0xc], 0
jmp 0x4e445c
mov eax, ebx
or edx, ebx
mov dword [esp + 0xc], edx
add edi, 0xffffffff
cmp dword [esp + 0x2c], edi
je 0x4e44ae
push dword [ebp + 0x18]
push dword [esp + 0x1c]
lea eax, [esp + 0x68]
push eax
push eax
push eax
call fcn.004e2d80
add esp, 0x14
test eax, eax
je 0x4e45a3
mov eax, dword [esp + 0x14]
lea ecx, [eax + edi]
mov ebx, dword [esp + 0xc]
add ebx, ebx
xor edx, edx
test ecx, ecx
js 0x4e444b
mov eax, ecx
shr eax, 5
mov edx, dword [ebp + 0x10]
cmp eax, dword [edx + 4]
mov edx, 0
jae 0x4e444b
mov edx, dword [ebp + 0x10]
mov edx, dword [edx]
mov edx, dword [edx + eax*4]
shr edx, cl
and edx, 1
jmp 0x4e444b
push dword [esp + 4]
lea eax, [esp + 0x44]
push eax
call fcn.004de700
add esp, 8
test eax, eax
je 0x4e45fe
test esi, esi
mov edi, dword [esp + 0x18]
je 0x4e44de
push esi
push 0
push dword [esp + 0x48]
call fcn.00645dd0
add esp, 0xc
mov eax, ebx
not eax
mov dword [esp + 0x14], 0
mov ecx, dword [esp + 0x20]
mov ebx, edi
mov dword [esp + 0x30], eax
jmp 0x4e4509
mov edx, dword [esp + 0x14]
add edx, 1
add ecx, esi
mov dword [esp + 0x14], edx
cmp edx, dword [esp + 0x3c]
je 0x4e4574
cmp dword [esp + 4], 0
jle 0x4e44f6
mov edx, dword [esp + 0x14]
xor edx, dword [esp + 0xc]
add edx, 0xffffffff
and edx, eax
sar edx, 0x1f
xor edi, edi
cmp dword [esp + 4], 1
mov eax, dword [esp + 0x10]
je 0x4e4551
xor edi, edi
nop
mov ebx, dword [ecx + edi*4]
and ebx, edx
mov esi, dword [esp + 0x40]
or dword [esi + edi*4], ebx
mov esi, dword [ecx + edi*4 + 4]
and esi, edx
mov ebx, dword [esp + 0x40]
or dword [ebx + edi*4 + 4], esi
add edi, 2
cmp eax, edi
jne 0x4e4530
test byte [esp + 4], 1
mov ebx, dword [esp + 0x18]
mov esi, dword [esp + 8]
mov eax, dword [esp + 0x30]
je 0x4e44f6
and edx, dword [ecx + edi*4]
mov ebx, dword [esp + 0x40]
or dword [ebx + edi*4], edx
mov ebx, dword [esp + 0x18]
jmp 0x4e44f6
mov eax, dword [esp + 4]
mov dword [esp + 0x44], eax
push dword [ebp + 0x18]
push ebx
lea eax, [esp + 0x48]
push eax
lea eax, [esp + 0x6c]
push eax
push eax
call fcn.004e2d80
add esp, 0x14
mov ecx, dword [esp + 0x38]
test eax, eax
mov eax, dword [esp + 0x34]
jne 0x4e442d
mov eax, dword [esp + 0x1c]
mov edi, dword [esp + 0x28]
mov esi, dword [esp + 0x24]
xor ebx, ebx
push eax
call fcn.004e3040
add esp, 4
test esi, esi
mov eax, dword [esp + 0x20]
jne 0x4e45d0
test eax, eax
je 0x4e45d0
push edi
push eax
call fcn.00516790
add esp, 8
push esi
call fcn.00516700
add esp, 4
jmp 0x4e37d3
push dword [ebp + 0x18]
push dword [esp + 0x1c]
lea eax, [esp + 0x68]
push eax
push dword [ebp + 8]
call fcn.004e2f40
add esp, 0x10
xor ebx, ebx
test eax, eax
setne bl
jmp 0x4e4600
xor ebx, ebx
mov eax, dword [esp + 0x1c]
mov edi, dword [esp + 0x28]
jmp 0x4e3a5c