Function at 0x470a39
Capabilities:
Terminate process

Disassembly:
mov eax, dword [0x57b7e0]
cmp dword [eax + 0x224], 0
je 0x470a52
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.00470c6d
pop ecx
mov eax, dword [0x57b7e0]
mov ecx, dword [eax + 0x1c]
mov ebp, 0x573a04
cmp ecx, 0x18
jge 0x470a7f
mov eax, dword [eax + ecx*4 + 0x20]
push dword [eax*4 + 0x57274c]
jmp 0x470a80
push ebp
call fcn.00470c6d
pop ecx
mov edi, 0x574760
push edi
push 0xa
call fcn.00479bb9
mov eax, dword [0x57b7e0]
pop ecx
pop ecx
mov esi, dword [eax + 0x1c]
dec esi
js 0x470ae3
push ebx
lea ebx, [esi*4 + 0x20]
push str.______________called_from
call fcn.00470c6d
cmp esi, 0x18
pop ecx
jge 0x470ac9
mov eax, dword [0x57b7e0]
mov eax, dword [ebx + eax]
push dword [eax*4 + 0x57274c]
jmp 0x470aca
push ebp
call fcn.00470c6d
pop ecx
push edi
push 0xa
call fcn.00479bb9
dec esi
pop ecx
sub ebx, 4
pop ecx
test esi, esi
jge 0x470aa8
pop ebx
mov eax, dword [esp + 0x10]
pop edi
dec eax
pop esi
cmp eax, 0x1c
pop ebp
ja case.default.0x470af4
jmp dword [eax*4 + 0x470bf9]
push str.Number_base_too_big_for_representation_n
jmp 0x470bec
push str.Division_by_zero_attempted_n
jmp 0x470bec
push str.Overflow___Number_too_big_n
jmp 0x470bec
push str.Internal_result_is_negative_n
jmp 0x470bec
push str.Input_format_error_n
jmp 0x470bec
push str.Illegal_number_base_n
jmp 0x470bec
push str.Illegal_parameter_usage_n
jmp 0x470bec
push str.Out_of_space_n
jmp 0x470bec
push str.Even_root_of_a_negative_number_n
jmp 0x470bec
push str.Raising_integer_to_negative_power_n
jmp 0x470bec
push str.Attempt_to_take_illegal_root_n
jmp 0x470bec
push str.Integer_operation_attempted_on_Flash_number_n
jmp 0x470bec
push str.Flash_overflow_n
jmp 0x470bec
push str.Numbers_too_big_n
jmp 0x470bec
push str.Log_of_a_non_positive_number_n
jmp 0x470bec
push str.Flash_to_double_conversion_failure_n
jmp 0x470bec
push str.I_O_buffer_overflow_n
jmp 0x470bec
push str.MIRACL_not_initialised___no_call_to_mirsys___n
jmp 0x470bec
push str.Illegal_modulus__n
jmp 0x470bec
push str.No_modulus_defined_n
jmp 0x470bec
push str.Exponent_too_big_n
jmp 0x470bec
push str.Unsupported_Feature___check_mirdef.h_n
jmp 0x470bec
push str.Specified_double_length_type_isnt_double_length_n
jmp 0x470bec
push str.Specified_basis_is_NOT_irreducible_n
jmp 0x470bec
push str.Unable_to_control_Floating_point_rounding_n
jmp 0x470bec
push str.Base_must_be_binary__MR_ALWAYS_BINARY_defined_in_mirdef.h____n
jmp 0x470bec
push str.No_irreducible_basis_defined_n
jmp 0x470bec
push str.Composite_modulus_n
jmp 0x470bec
push str.Input_output_error_when_reading_from_RNG_device_node_n
jmp 0x470bec
push str.Undefined_error_n
call fcn.00470c6d
pop ecx
push 0
call fcn.00476d90
sti
or al, byte [edi]
add eax, 0xf00470b
or eax, dword [edi]
sbb dword [ebx], ecx
inc edi
add byte [ebx], ah
or eax, dword [edi]
sub eax, 0x3700470b
or eax, dword [edi]
inc ecx
or eax, dword [edi]
dec ebx
or eax, dword [edi]
push ebp
or eax, dword [edi]
pop edi
or eax, dword [edi]
imul ecx, dword [ebx], 0xb700047
inc edi
add byte [edi + 0xb], dh
inc edi
add byte [esi + 0xb], bh
inc edi
add byte [ebp - 0x73ffb8f5], al
or eax, dword [edi]
xchg ebx, eax
or eax, dword [edi]
lcall 0x470b, 0xa100470b
add byte [eax - 1358936309], ch
or eax, dword [edi]
mov dh, 0xb
inc edi
add byte [ebp - 0x3bffb8f5], bh
or eax, dword [edi]
retf