Function at 0x4a7e90
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x438
mov eax, dword [0x5b00cc]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0xc]
push ebx
mov dword [ebp - 0x40c], eax
mov eax, dword [ebp + 0x10]
test eax, eax
push esi
mov esi, dword [ebp + 8]
mov ebx, 0xa
push edi
mov dword [ebp - 0x434], ecx
mov dword [ebp - 0x418], ebx
jle 0x4a7f4d
add ecx, 8
mov edi, eax
mov eax, dword [ecx - 4]
add eax, 0xfffffffe
cmp eax, 0xe
ja case.0x4a7ee5.4
movzx eax, byte [eax + 0x4a84dc]
jmp dword [eax*4 + 0x4a84c0]
add ebx, 3
mov dword [ebp - 0x418], ebx
jmp case.0x4a7ee5.4
add ebx, 6
mov dword [ebp - 0x418], ebx
jmp case.0x4a7ee5.4
add ebx, 4
mov dword [ebp - 0x418], ebx
jmp case.0x4a7ee5.4
add ebx, 8
mov dword [ebp - 0x418], ebx
jmp case.0x4a7ee5.4
add ebx, 0xa
mov dword [ebp - 0x418], ebx
jmp case.0x4a7ee5.4
movsx eax, word [ecx]
add eax, dword [ebp - 0x40c]
mov eax, dword [eax]
test eax, eax
je 0x4a7f37
mov eax, dword [eax + 0xc]
jmp 0x4a7f39
xor eax, eax
lea eax, [ebx + eax + 6]
mov dword [ebp - 0x418], eax
mov ebx, eax
add ecx, 0xc
sub edi, 1
jne 0x4a7ed3
push ebx
mov dword [edx], ebx
call fcn.005663ab
movzx ecx, bx
push 2
lea edx, [ebp - 0x414]
mov edi, eax
push edx
mov dword [ebp - 0x414], ecx
push edi
mov dword [esi], edi
mov byte [ebp - 0x414], bh
mov byte [ebp - 0x413], bl
call fcn.00566500
xor esi, esi
mov dword [ebp - 0x408], esi
mov al, byte [ebp - 0x407]
movzx ecx, byte [ebp - 0x406]
push 4
lea edx, [ebp - 0x408]
mov byte [ebp - 0x406], al
lea eax, [edi + 2]
push edx
push eax
mov byte [ebp - 0x408], 0
mov byte [ebp - 0x405], 0
mov byte [ebp - 0x407], cl
call fcn.00566500
mov dword [ebp - 0x408], esi
mov al, byte [ebp - 0x407]
movzx ecx, byte [ebp - 0x406]
push 4
lea edx, [ebp - 0x408]
mov byte [ebp - 0x406], al
push edx
lea eax, [edi + 6]
push eax
mov byte [ebp - 0x408], 0
mov byte [ebp - 0x405], 0
mov byte [ebp - 0x407], cl
call fcn.00566500
add esp, 0x28
cmp dword [ebp + 0x10], 0
mov esi, 0xa
jle 0x4a8450
mov ebx, dword [ebp - 0x434]
mov ecx, dword [ebp + 0x10]
add ebx, 8
mov dword [ebp - 0x434], ecx
mov eax, dword [ebx - 4]
add eax, 0xfffffffe
cmp eax, 0xe
ja case.0x4a8037.4
movzx edx, byte [eax + 0x4a8510]
jmp dword [edx*4 + 0x4a84ec]
movzx eax, byte [ebx - 8]
mov edx, dword [ebp - 0x40c]
mov byte [esi + edi], al
add esi, 1
mov byte [esi + edi], 0xc
movsx ecx, word [ebx]
movzx eax, byte [ecx + edx]
add esi, 1
mov byte [esi + edi], al
add esi, 1
jmp case.0x4a8037.4
movzx ecx, byte [ebx - 8]
mov byte [esi + edi], cl
movzx edx, byte [ebx - 4]
mov ecx, dword [ebp - 0x40c]
mov byte [esi + edi + 1], dl
movsx eax, word [ebx]
mov edx, dword [eax + ecx]
add esi, 1
mov dword [ebp - 0x408], edx
movzx ecx, byte [ebp - 0x405]
mov al, dl
movzx edx, byte [ebp - 0x406]
mov byte [ebp - 0x405], al
mov al, byte [ebp - 0x407]
mov byte [ebp - 0x406], al
push 4
lea eax, [ebp - 0x408]
add esi, 1
mov byte [ebp - 0x408], cl
push eax
lea ecx, [esi + edi]
push ecx
mov byte [ebp - 0x407], dl
call fcn.00566500
add esp, 0xc
add esi, 4
jmp case.0x4a8037.4
mov dl, byte [ebx - 8]
mov ecx, dword [ebp - 0x40c]
mov byte [esi + edi], dl
add esi, 1
mov byte [esi + edi], 2
movsx eax, word [ebx]
movzx edx, word [eax + ecx]
mov dword [ebp - 0x430], edx
mov cl, byte [ebp - 0x42f]
mov al, dl
push 2
lea edx, [ebp - 0x430]
add esi, 1
mov byte [ebp - 0x42f], al
push edx
lea eax, [esi + edi]
push eax
mov byte [ebp - 0x430], cl
call fcn.00566500
add esp, 0xc
add esi, 2
jmp case.0x4a8037.4
mov cl, byte [ebx - 8]
mov eax, dword [ebp - 0x40c]
mov byte [esi + edi], cl
add esi, 1
mov byte [esi + edi], 8
movsx edx, word [ebx]
movzx ecx, word [edx + eax]
mov dword [ebp - 0x420], ecx
movzx edx, byte [ebp - 0x41f]
mov al, cl
mov byte [ebp - 0x41f], al
push 2
lea eax, [ebp - 0x420]
add esi, 1
push eax
lea ecx, [esi + edi]
push ecx
mov byte [ebp - 0x420], dl
call fcn.00566500
movsx edx, word [ebx]
mov eax, dword [ebp - 0x40c]
movzx ecx, word [edx + eax + 2]
mov dword [ebp - 0x41c], ecx
movzx edx, byte [ebp - 0x41b]
mov al, cl
mov byte [ebp - 0x41b], al
push 2
lea eax, [ebp - 0x41c]
push eax
lea ecx, [edi + esi + 2]
push ecx
mov byte [ebp - 0x41c], dl
call fcn.00566500
movsx edx, word [ebx]
mov eax, dword [ebp - 0x40c]
movzx ecx, word [edx + eax + 4]
mov dword [ebp - 0x424], ecx
movzx edx, byte [ebp - 0x423]
mov al, cl
mov byte [ebp - 0x423], al
push 2
lea eax, [ebp - 0x424]
push eax
lea ecx, [esi + edi + 4]
push ecx
mov byte [ebp - 0x424], dl
call fcn.00566500
add esp, 0x24
add esi, 6
jmp case.0x4a8037.4
mov dl, byte [ebx - 8]
mov ecx, dword [ebp - 0x40c]
mov byte [esi + edi], dl
add esi, 1
mov byte [esi + edi], 9
movsx eax, word [ebx]
movzx edx, word [eax + ecx]
mov dword [ebp - 0x428], edx
movzx ecx, byte [ebp - 0x427]
mov al, dl
push 2
lea edx, [ebp - 0x428]
add esi, 1
mov byte [ebp - 0x427], al
push edx
lea eax, [esi + edi]
push eax
mov byte [ebp - 0x428], cl
call fcn.00566500
movsx ecx, word [ebx]
mov edx, dword [ebp - 0x40c]
movzx eax, word [ecx + edx + 2]
mov dword [ebp - 0x42c], eax
movzx ecx, byte [ebp - 0x42b]
push 2
lea edx, [ebp - 0x42c]
mov byte [ebp - 0x42b], al
push edx
lea eax, [edi + esi + 2]
push eax
mov byte [ebp - 0x42c], cl
call fcn.00566500
movsx ecx, word [ebx]
mov edx, dword [ebp - 0x40c]
movzx eax, word [ecx + edx + 4]
mov dword [ebp - 0x414], eax
movzx ecx, byte [ebp - 0x413]
push 2
lea edx, [ebp - 0x414]
mov byte [ebp - 0x413], al
push edx
lea eax, [esi + edi + 4]
push eax
mov byte [ebp - 0x414], cl
call fcn.00566500
add esp, 0x24
add esi, 6
jmp case.0x4a8037.4
movzx ecx, byte [ebx - 8]
mov eax, dword [ebp - 0x40c]
mov byte [esi + edi], cl
mov byte [esi + edi + 1], 6
movsx edx, word [ebx]
movzx ecx, byte [edx + eax + 3]
add esi, 1
lea eax, [edx + eax + 4]
add esi, 1
mov byte [esi + edi], cl
movzx edx, byte [eax - 2]
mov byte [esi + edi + 1], dl
movzx ecx, byte [eax - 3]
mov byte [esi + edi + 2], cl
movzx edx, byte [eax - 4]
mov byte [esi + edi + 3], dl
add esi, 4
jmp case.0x4a8037.4
mov al, byte [ebx - 8]
mov edx, dword [ebp - 0x40c]
mov byte [esi + edi], al
mov byte [esi + edi + 1], 7
movsx ecx, word [ebx]
lea eax, [ecx + edx + 8]
movzx ecx, byte [eax - 1]
add esi, 1
add esi, 1
mov byte [esi + edi], cl
movzx edx, byte [eax - 2]
mov byte [esi + edi + 1], dl
movzx ecx, byte [eax - 3]
mov byte [esi + edi + 2], cl
movzx edx, byte [eax - 4]
mov byte [esi + edi + 3], dl
movzx ecx, byte [eax - 5]
mov byte [esi + edi + 4], cl
movzx edx, byte [eax - 6]
mov byte [esi + edi + 5], dl
movzx ecx, byte [eax - 7]
mov byte [esi + edi + 6], cl
movzx edx, byte [eax - 8]
mov byte [esi + edi + 7], dl
add esi, 8
jmp case.0x4a8037.4
movsx eax, word [ebx]
mov cl, byte [ebx - 8]
add eax, dword [ebp - 0x40c]
mov byte [esi + edi], cl
mov dl, byte [ebx - 4]
add esi, 1
mov byte [esi + edi], dl
mov dword [ebp - 0x438], eax
mov eax, dword [eax]
add esi, 1
test eax, eax
je 0x4a83a1
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x410], eax
jmp 0x4a83ab
mov dword [ebp - 0x410], 0
mov al, byte [ebp - 0x410]
mov cl, byte [ebp - 0x40d]
mov dl, byte [ebp - 0x40e]
mov byte [ebp - 0x40d], al
mov al, byte [ebp - 0x40f]
mov byte [ebp - 0x40e], al
push 4
lea eax, [ebp - 0x410]
mov byte [ebp - 0x410], cl
push eax
lea ecx, [esi + edi]
push ecx
mov byte [ebp - 0x40f], dl
call fcn.00566500
mov edx, dword [ebp - 0x438]
mov eax, dword [edx]
add esp, 0xc
add esi, 4
test eax, eax
je 0x4a8404
mov ecx, dword [eax + 0xc]
jmp 0x4a8406
xor ecx, ecx
test eax, eax
je 0x4a8412
mov eax, dword [eax + 4]
add eax, 1
jmp 0x4a8417
mov eax, 0x57e81c
push ecx
push eax
lea eax, [esi + edi]
push eax
call fcn.00566500
mov ecx, dword [ebp - 0x438]
mov eax, dword [ecx]
add esp, 0xc
test eax, eax
je 0x4a8436
mov eax, dword [eax + 0xc]
jmp 0x4a8438
xor eax, eax
add esi, eax
add ebx, 0xc
sub dword [ebp - 0x434], 1
jne 0x4a8021
mov ebx, dword [ebp - 0x418]
pop edi
cmp esi, ebx
pop esi
pop ebx
je 0x4a84ae
push 0
push str.offset__size
push 0x84a
push str.........Common_rbdbThumb.cpp
push str.Failed_Assertion
push 4
push str.Runtime_Error__d:__s_nPress_OK_to_Continue_nPress_Cancel_to_Quit._n_nPlease_report_what_caused_this_error_nalong_with_the_information_below._n_n_s:__d_nFailure_Condition:__s_n_s
lea edx, [ebp - 0x404]
push 0x400
push edx
call fcn.00567446
add esp, 0x24
push 0x111
push str.Runtime_Error
lea eax, [ebp - 0x404]
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
cmp eax, 2
jne 0x4a84ae
push 0
call dword [sym.imp.KERNEL32.DLL_ExitProcess]
mov ecx, dword [ebp - 4]
xor ecx, ebp
mov al, 1
call fcn.00566120
mov esp, ebp
pop ebp
ret