Function at 0x40b630
Capabilities:
Terminate process

Disassembly:
mov eax, dword [0x43278c]
mov ecx, dword [eax + 0x228]
test ecx, ecx
je 0x40b64a
mov ecx, dword [esp + 4]
mov dword [eax + 0x22c], ecx
ret
push str._nMIRACL_error_from_routine
call fcn.0040b870
add esp, 4
mov ecx, dword [0x43278c]
mov eax, dword [ecx + 0x1c]
cmp eax, 0x18
jge 0x40b673
mov edx, dword [ecx + eax*4 + 0x20]
mov eax, dword [edx*4 + 0x42cafc]
push eax
jmp 0x40b678
push 0x42d720
call fcn.0040b870
add esp, 4
push esi
push 0x42dcd8
push 0xa
call fcn.00413b69
mov ecx, dword [0x43278c]
add esp, 8
mov esi, dword [ecx + 0x1c]
dec esi
js 0x40b6ee
push edi
lea edi, [esi*4 + 0x20]
push str.______________called_from
call fcn.0040b870
add esp, 4
cmp esi, 0x18
jge 0x40b6c9
mov edx, dword [0x43278c]
mov eax, dword [edi + edx]
mov ecx, dword [eax*4 + 0x42cafc]
push ecx
jmp 0x40b6ce
push 0x42d720
call fcn.0040b870
add esp, 4
push 0x42dcd8
push 0xa
call fcn.00413b69
add esp, 8
dec esi
sub edi, 4
test esi, esi
jge 0x40b6a4
pop edi
mov edx, dword [esp + 8]
pop esi
lea eax, [edx - 1]
cmp eax, 0x1b
ja case.default.0x40b6ff
jmp dword [eax*4 + 0x40b7fc]
push str.Number_base_too_big_for_representation_n
jmp 0x40b7ed
push str.Division_by_zero_attempted_n
jmp 0x40b7ed
push str.Overflow___Number_too_big_n
jmp 0x40b7ed
push str.Internal_result_is_negative_n
jmp 0x40b7ed
push str.Input_format_error_n
jmp 0x40b7ed
push str.Illegal_number_base_n
jmp 0x40b7ed
push str.Illegal_parameter_usage_n
jmp 0x40b7ed
push str.Out_of_space_n
jmp 0x40b7ed
push str.Even_root_of_a_negative_number_n
jmp 0x40b7ed
push str.Raising_integer_to_negative_power_n
jmp 0x40b7ed
push str.Attempt_to_take_illegal_root_n
jmp 0x40b7ed
push str.Integer_operation_attempted_on_Flash_number_n
jmp 0x40b7ed
push str.Flash_overflow_n
jmp 0x40b7ed
push str.Numbers_too_big_n
jmp 0x40b7ed
push str.Log_of_a_non_positive_number_n
jmp 0x40b7ed
push str.Flash_to_double_conversion_failure_n
jmp 0x40b7ed
push str.I_O_buffer_overflow_n
jmp 0x40b7ed
push str.MIRACL_not_initialised___no_call_to_mirsys___n
jmp 0x40b7ed
push str.Illegal_modulus__n
jmp 0x40b7ed
push str.No_modulus_defined_n
jmp 0x40b7ed
push str.Exponent_too_big_n
jmp 0x40b7ed
push str.Number_Base_must_be_power_of_2_n
jmp 0x40b7ed
push str.Specified_double_length_type_isnt_double_length_n
jmp 0x40b7ed
push str.Specified_basis_is_NOT_irreducible_n
jmp 0x40b7ed
push str.Unable_to_control_Floating_point_rounding_n
jmp 0x40b7ed
push str.Base_must_be_binary__MR_ALWAYS_BINARY_defined_in_mirdef.h____n
jmp 0x40b7ed
push str.No_irreducible_basis_defined_n
jmp 0x40b7ed
push str.Composite_modulus_n
jmp 0x40b7ed
push str.Undefined_error_n
call fcn.0040b870
add esp, 4
push 0
call fcn.00413a76
push es
mov bh, 64
add byte [eax], dl
mov bh, 0x40
add byte [edx], bl
mov bh, 0x40
add byte [edi + esi*4], ah
inc eax
add byte [esi], ch
mov bh, 0x40
add byte [eax], bh
mov bh, 0x40
add byte [edx - 0x49], al
inc eax
add byte [edi + esi*4 + 0x40], cl
add byte [esi - 0x49], dl
inc eax
add byte [eax - 0x49], ah
inc eax
add byte [edx - 0x49], ch
inc eax
add byte [ecx - 0x49], dh
inc eax
add byte [eax - 0x49], bh
inc eax
add byte [edi - 0x49], bh
inc eax
add byte [esi - 0x72ffbf49], al
mov bh, 0x40
add byte [edi + esi*4 - 0x4864ffc0], dl
inc eax
add byte [edx - 0x56ffbf49], ah
mov bh, 0x40
add byte [eax - 0x48ffbf49], dh
mov bh, 0x40
add byte [esi - 0x3affbf49], bh
mov bh, 0x40
add ah, cl
mov bh, 0x40
add bl, dl
mov bh, 0x40
add dl, bl
mov bh, 0x40
add cl, ah
mov bh, 0x40
add byte [eax + 0x56909090], dl
push esi
mov esi, dword [esp + 8]
mov al, byte [esi]
test al, al
je 0x40b893
movsx eax, al
push 0x42dcd8
push eax
inc esi
call fcn.00413b69
mov al, byte [esi]
add esp, 8
test al, al
jne 0x40b87b
pop esi
ret