Function at 0x489f56
Capabilities:
Terminate process

Disassembly:
mov eax, dword [0x509198]
cmp dword [eax + 0x224], 0
je 0x489f6f
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.0048a18a
pop ecx
mov eax, dword [0x509198]
mov ecx, dword [eax + 0x1c]
mov ebp, 0x503d94
cmp ecx, 0x18
jge 0x489f9c
mov eax, dword [eax + ecx*4 + 0x20]
push dword [eax*4 + 0x502adc]
jmp 0x489f9d
push ebp
call fcn.0048a18a
pop ecx
mov edi, 0x5051c8
push edi
push 0xa
call fcn.0049a16c
mov eax, dword [0x509198]
pop ecx
pop ecx
mov esi, dword [eax + 0x1c]
dec esi
js 0x48a000
push ebx
lea ebx, [esi*4 + 0x20]
push str.______________called_from
call fcn.0048a18a
cmp esi, 0x18
pop ecx
jge 0x489fe6
mov eax, dword [0x509198]
mov eax, dword [ebx + eax]
push dword [eax*4 + 0x502adc]
jmp 0x489fe7
push ebp
call fcn.0048a18a
pop ecx
push edi
push 0xa
call fcn.0049a16c
dec esi
pop ecx
sub ebx, 4
pop ecx
test esi, esi
jge 0x489fc5
pop ebx
mov eax, dword [esp + 0x10]
pop edi
dec eax
pop esi
cmp eax, 0x1c
pop ebp
ja case.default.0x48a011
jmp dword [eax*4 + 0x48a116]
push str.Number_base_too_big_for_representation_n
jmp 0x48a109
push str.Division_by_zero_attempted_n
jmp 0x48a109
push str.Overflow___Number_too_big_n
jmp 0x48a109
push str.Internal_result_is_negative_n
jmp 0x48a109
push str.Input_format_error_n
jmp 0x48a109
push str.Illegal_number_base_n
jmp 0x48a109
push str.Illegal_parameter_usage_n
jmp 0x48a109
push str.Out_of_space_n
jmp 0x48a109
push str.Even_root_of_a_negative_number_n
jmp 0x48a109
push str.Raising_integer_to_negative_power_n
jmp 0x48a109
push str.Attempt_to_take_illegal_root_n
jmp 0x48a109
push str.Integer_operation_attempted_on_Flash_number_n
jmp 0x48a109
push str.Flash_overflow_n
jmp 0x48a109
push str.Numbers_too_big_n
jmp 0x48a109
push str.Log_of_a_non_positive_number_n
jmp 0x48a109
push str.Flash_to_double_conversion_failure_n
jmp 0x48a109
push str.I_O_buffer_overflow_n
jmp 0x48a109
push str.MIRACL_not_initialised___no_call_to_mirsys___n
jmp 0x48a109
push str.Illegal_modulus__n
jmp 0x48a109
push str.No_modulus_defined_n
jmp 0x48a109
push str.Exponent_too_big_n
jmp 0x48a109
push str.Unsupported_Feature___check_mirdef.h_n
jmp 0x48a109
push str.Specified_double_length_type_isnt_double_length_n
jmp 0x48a109
push str.Specified_basis_is_NOT_irreducible_n
jmp 0x48a109
push str.Unable_to_control_Floating_point_rounding_n
jmp 0x48a109
push str.Base_must_be_binary__MR_ALWAYS_BINARY_defined_in_mirdef.h____n
jmp 0x48a109
push str.No_irreducible_basis_defined_n
jmp 0x48a109
push str.Composite_modulus_n
jmp 0x48a109
push str.Input_output_error_when_reading_from_RNG_device_node_n
jmp 0x48a109
push str.Undefined_error_n
call fcn.0048a18a
pop ecx
push 0
call fcn.0049a6e5
sbb byte [eax - 0x5fddffb8], ah
dec eax
add byte [eax], ch
dec eax
add byte [esi], dh
mov al, byte [0xa0400048]
dec eax
add byte [edx - 0x60], cl
dec eax
add byte [eax + 0x48], dl
add byte [esi - 0x60], bl
dec eax
add byte [eax - 0x60], ch
dec eax
add byte [edx - 0x60], dh
dec eax
add byte [eax + 0x48], bh
add byte [esi - 0x72ffb760], al
mov al, byte [0xa0940048]
dec eax
add byte [ebx - 0x5dffb760], bl
mov al, byte [0xa0a90048]
dec eax
add byte [eax - 0x48ffb760], dh
mov al, byte [0xa0be0048]
dec eax
add ch, al
mov al, byte [0xa0cc0048]
dec eax
add bl, dl
mov al, byte [0xa0da0048]
dec eax
add cl, ah
mov al, byte [0xa0e80048]
dec eax
add bh, ch
mov al, byte [0xa0f60048]
dec eax
add ch, bh
mov al, byte [0x8b560048]
push esi
invalid
je 0x48a1b2
or byte [edx + 0x74c08406], cl
adc ecx, dword [edi]
mov esi, 0x51c868c0
push eax
add byte [eax + 0x46], dl
mov al, byte [esi]
test al, al
je 0x48a1a8
movsx eax, al
push 0x5051c8
push eax
inc esi
call fcn.0049a16c
pop ecx
pop ecx
jmp 0x48a18f
pop esi
ret
invalid