Function at 0x486ec6
Capabilities:
Terminate process

Disassembly:
mov eax, dword [0x504944]
cmp dword [eax + 0x224], 0
je 0x486edf
mov ecx, dword [esp + 4]
mov dword [eax + 0x228], ecx
ret
push ebp
push esi
push edi
push str._nMIRACL_error_from_routine
call fcn.004870fa
pop ecx
mov eax, dword [0x504944]
mov ecx, dword [eax + 0x1c]
mov ebp, 0x4ff524
cmp ecx, 0x18
jge 0x486f0c
mov eax, dword [eax + ecx*4 + 0x20]
push dword [eax*4 + 0x4fe26c]
jmp 0x486f0d
push ebp
call fcn.004870fa
pop ecx
mov edi, 0x500950
push edi
push 0xa
call fcn.004972e7
mov eax, dword [0x504944]
pop ecx
pop ecx
mov esi, dword [eax + 0x1c]
dec esi
js 0x486f70
push ebx
lea ebx, [esi*4 + 0x20]
push str.______________called_from
call fcn.004870fa
cmp esi, 0x18
pop ecx
jge 0x486f56
mov eax, dword [0x504944]
mov eax, dword [ebx + eax]
push dword [eax*4 + 0x4fe26c]
jmp 0x486f57
push ebp
call fcn.004870fa
pop ecx
push edi
push 0xa
call fcn.004972e7
dec esi
pop ecx
sub ebx, 4
pop ecx
test esi, esi
jge 0x486f35
pop ebx
mov eax, dword [esp + 0x10]
pop edi
dec eax
pop esi
cmp eax, 0x1c
pop ebp
ja case.default.0x486f81
jmp dword [eax*4 + 0x487086]
push str.Number_base_too_big_for_representation_n
jmp 0x487079
push str.Division_by_zero_attempted_n
jmp 0x487079
push str.Overflow___Number_too_big_n
jmp 0x487079
push str.Internal_result_is_negative_n
jmp 0x487079
push str.Input_format_error_n
jmp 0x487079
push str.Illegal_number_base_n
jmp 0x487079
push str.Illegal_parameter_usage_n
jmp 0x487079
push str.Out_of_space_n
jmp 0x487079
push str.Even_root_of_a_negative_number_n
jmp 0x487079
push str.Raising_integer_to_negative_power_n
jmp 0x487079
push str.Attempt_to_take_illegal_root_n
jmp 0x487079
push str.Integer_operation_attempted_on_Flash_number_n
jmp 0x487079
push str.Flash_overflow_n
jmp 0x487079
push str.Numbers_too_big_n
jmp 0x487079
push str.Log_of_a_non_positive_number_n
jmp 0x487079
push str.Flash_to_double_conversion_failure_n
jmp 0x487079
push str.I_O_buffer_overflow_n
jmp 0x487079
push str.MIRACL_not_initialised___no_call_to_mirsys___n
jmp 0x487079
push str.Illegal_modulus__n
jmp 0x487079
push str.No_modulus_defined_n
jmp 0x487079
push str.Exponent_too_big_n
jmp 0x487079
push str.Unsupported_Feature___check_mirdef.h_n
jmp 0x487079
push str.Specified_double_length_type_isnt_double_length_n
jmp 0x487079
push str.Specified_basis_is_NOT_irreducible_n
jmp 0x487079
push str.Unable_to_control_Floating_point_rounding_n
jmp 0x487079
push str.Base_must_be_binary__MR_ALWAYS_BINARY_defined_in_mirdef.h____n
jmp 0x487079
push str.No_irreducible_basis_defined_n
jmp 0x487079
push str.Composite_modulus_n
jmp 0x487079
push str.Input_output_error_when_reading_from_RNG_device_node_n
jmp 0x487079
push str.Undefined_error_n
call fcn.004870fa
pop ecx
push 0
call fcn.004976f5
mov byte [edi + 0x48], ch
add byte [edx - 1677703057], dl
outsd dx, dword [esi]
dec eax
add byte [esi - 0x4fffb791], ah
outsd dx, dword [esi]
dec eax
add byte [edx - 0x3bffb791], bh
outsd dx, dword [esi]
dec eax
add dh, cl
outsd dx, dword [esi]
dec eax
add al, bl
outsd dx, dword [esi]
dec eax
add dl, ah
outsd dx, dword [esi]
dec eax
add ah, ch
outsd dx, dword [esi]
dec eax
add dh, dh
outsd dx, dword [esi]
dec eax
add ch, bh
outsd dx, dword [esi]
dec eax
add byte [eax + esi*2], al
dec eax
add byte [ebx], cl
jo 0x487109
add byte [edx], dl
jo 0x48710d
add byte [ecx], bl
jo 0x487111
add byte [eax], ah
jo 0x487115
add byte [edi], ah
jo 0x487119
add byte [esi], ch
jo 0x48711d
add byte [0x3c004870], dh
jo 0x487125
add byte [ebx + 0x70], al
dec eax
add byte [edx + 0x70], cl
dec eax
add byte [ecx + 0x70], dl
dec eax
add byte [eax + 0x70], bl
dec eax
add byte [edi + 0x70], bl
dec eax
add byte [esi + 0x70], ah
dec eax
add byte [ebp + 0x70], ch
dec eax
add byte [esi - 0x75], dl
push esi
invalid
je 0x487122
or byte [edx + 0x74c08406], cl
adc ecx, dword [edi]
mov esi, 0x95068c0
push eax
add byte [eax + 0x46], dl
mov al, byte [esi]
test al, al
je 0x487118
movsx eax, al
push 0x500950
push eax
or dword [eax], edx
push eax
inc esi
call fcn.004972e7
pop ecx
add dword [ecx], eax
add byte [ecx + 0x59], bl
pop ecx
jmp 0x4870ff
pop esi
ret
push eax
add byte [esi + 0x57], dl
invalid
sbb al, 0xbe
push eax
or dword [eax], edx