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

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x5c
mov edx, dword [esp + 0x74]
mov esi, dword [esp + 0x70]
mov eax, dword [esp + 0x78]
mov ebx, dword [esp + 0x7c]
test edx, edx
jne case.default.0x4035e0
cmp eax, 9
ja case.default.0x4035e0
jmp dword [eax*4 + 0x50d100]
mov eax, dword [ebx + 4]
mov ecx, esi
mov eax, dword [eax]
mov dword [esp], eax
call method.DockPredictorBHT.clear_bht_machine::PredictorState_
sub esp, 4
add esp, 0x5c
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [esp], 6
mov ecx, esi
call method.DockPredictorBHT.clear_bht_machine::PredictorState_
sub esp, 4
jmp case.default.0x4035e0
add esp, 0x5c
mov ecx, esi
pop ebx
pop esi
pop edi
pop ebp
jmp fcn.004464d0
mov eax, dword [ebx + 0x14]
mov edi, dword [ebx + 0xc]
lea ebp, [esp + 0x30]
mov ecx, ebp
mov edx, dword [eax]
mov eax, dword [ebx + 0x10]
mov eax, dword [eax]
mov dword [esp], edi
mov dword [esp + 0x2c], edx
mov dword [esp + 0x28], eax
call method.machine::Instruction.Instruction_machine::Instruction_const_
mov eax, dword [edi + 8]
mov edx, dword [edi + 0xc]
sub esp, 4
movzx ecx, word [edi + 4]
mov dword [esp + 0x38], eax
mov eax, dword [edi + 0x10]
mov dword [esp + 0x3c], edx
mov edx, dword [edi + 0x14]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x28]
mov dword [esp + 0x44], edx
mov edx, dword [esp + 0x2c]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], edx
mov dword [esp + 8], ebp
mov eax, dword [ebx + 8]
mov word [esp + 0x34], cx
mov ecx, esi
movzx eax, word [eax]
mov dword [esp + 4], eax
mov eax, dword [ebx + 4]
movzx eax, word [eax]
mov dword [esp], eax
call method.DockPredictorBHT.show_new_prediction_unsigned_short__unsigned_short__machine::PredictionInput__machine::BranchResult__machine::BranchType_
sub esp, 0x14
jmp case.default.0x4035e0
mov edi, dword [ebx + 0xc]
lea ebp, [esp + 0x30]
mov ecx, ebp
mov dword [esp], edi
call method.machine::Instruction.Instruction_machine::Instruction_const_
movzx eax, word [edi + 4]
mov edx, dword [edi + 0xc]
mov ecx, esi
sub esp, 4
mov word [esp + 0x34], ax
mov eax, dword [edi + 8]
mov dword [esp + 0x3c], edx
mov edx, dword [edi + 0x14]
mov dword [esp + 0x38], eax
mov eax, dword [edi + 0x10]
mov dword [esp + 0x44], edx
mov dword [esp + 0x40], eax
mov eax, dword [edi + 0x1c]
mov edx, dword [edi + 0x18]
mov dword [esp + 8], ebp
mov dword [esp + 0x4c], eax
mov eax, dword [ebx + 8]
mov dword [esp + 0x48], edx
movzx eax, word [eax]
mov dword [esp + 4], eax
mov eax, dword [ebx + 4]
movzx eax, word [eax]
mov dword [esp], eax
call method.DockPredictorBHT.show_new_update_unsigned_short__unsigned_short__machine::PredictionFeedback_
sub esp, 0xc
jmp case.default.0x4035e0
mov eax, dword [ebx + 4]
mov ecx, esi
mov edx, dword [eax]
mov dword [esp], edx
mov edx, dword [eax + 4]
mov dword [esp + 4], edx
mov edx, dword [eax + 8]
mov dword [esp + 8], edx
mov eax, dword [eax + 0xc]
mov dword [esp + 0xc], eax
call method.DockPredictorBHT.update_predictor_stats_machine::PredictionStatistics_
sub esp, 0x10
jmp case.default.0x4035e0
mov eax, dword [ebx + 8]
mov ecx, esi
mov edx, dword [eax]
mov dword [esp + 4], edx
mov edx, dword [eax + 4]
mov dword [esp + 8], edx
mov edx, dword [eax + 8]
mov dword [esp + 0xc], edx
mov edx, dword [eax + 0xc]
mov dword [esp + 0x10], edx
mov eax, dword [eax + 0x10]
mov dword [esp + 0x14], eax
mov eax, dword [ebx + 4]
movzx eax, word [eax]
mov dword [esp], eax
call method.DockPredictorBHT.update_bht_row_unsigned_short__machine::BranchHistoryTableEntry_
sub esp, 0x18
jmp case.default.0x4035e0
add esp, 0x5c
mov ecx, esi
pop ebx
pop esi
pop edi
pop ebp
jmp method.DockPredictorBHT.reset_colors__
add esp, 0x5c
mov ecx, esi
pop ebx
pop esi
pop edi
pop ebp
jmp fcn.00445af0
add esp, 0x5c
mov ecx, esi
pop ebx
pop esi
pop edi
pop ebp
jmp fcn.00445990