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

Disassembly:
mov eax, dword [0x14c7638]
sub esp, 0xc
push ebx
push ebp
push esi
xor ebp, ebp
xor esi, esi
cmp eax, 0x80
push edi
jge 0x458cae
mov esi, eax
imul esi, esi, 0xe4
add esi, 0x1519c00
inc eax
mov dword [0x14c7638], eax
mov dword [esi], ebp
mov dword [esi + 4], ebp
mov dword [esi + 0x14], ebp
mov dword [esi + 0x90], ebp
mov dword [esi + 0x10], ebp
jmp 0x458cbb
push str.Too_many_HUD_elements_defined_n
call fcn.004777d0
add esp, 4
mov eax, dword [0x14c7638]
xor ebx, ebx
cmp eax, 0x80
jge 0x458cf0
mov ebx, eax
imul ebx, ebx, 0xe4
add ebx, 0x1519c00
inc eax
mov dword [0x14c7638], eax
mov dword [ebx], ebp
mov dword [ebx + 4], ebp
mov dword [ebx + 0x14], ebp
mov dword [ebx + 0x90], ebp
mov dword [ebx + 0x10], ebp
jmp 0x458cfd
push str.Too_many_HUD_elements_defined_n
call fcn.004777d0
add esp, 4
cmp esi, ebp
je 0x458d30
cmp ebx, ebp
je 0x458d30
mov eax, dword [esi + 0x90]
cmp eax, 0x14
jge 0x458d23
or dword [esi + 0x14], 4
mov dword [esi + eax*4 + 0x94], ebx
inc dword [esi + 0x90]
jmp 0x458d30
push str.Too_many_HUD_subelements_defined_n
call fcn.004777d0
add esp, 4
mov eax, dword [0x14c7638]
xor edi, edi
cmp eax, 0x80
jge 0x458d65
mov edi, eax
imul edi, edi, 0xe4
add edi, 0x1519c00
inc eax
mov dword [0x14c7638], eax
mov dword [edi], ebp
mov dword [edi + 4], ebp
mov dword [edi + 0x14], ebp
mov dword [edi + 0x90], ebp
mov dword [edi + 0x10], ebp
jmp 0x458d72
push str.Too_many_HUD_elements_defined_n
call fcn.004777d0
add esp, 4
cmp esi, ebp
je 0x458da5
cmp edi, ebp
je 0x458da5
mov eax, dword [esi + 0x90]
cmp eax, 0x14
jge 0x458d98
or dword [esi + 0x14], 4
mov dword [esi + eax*4 + 0x94], edi
inc dword [esi + 0x90]
jmp 0x458da5
push str.Too_many_HUD_subelements_defined_n
call fcn.004777d0
add esp, 4
mov eax, dword [0x14c7638]
cmp eax, 0x80
jge 0x458ddb
mov ebp, eax
imul ebp, ebp, 0xe4
add ebp, 0x1519c00
inc eax
mov dword [0x14c7638], eax
xor eax, eax
mov dword [ebp], eax
mov dword [ebp + 4], eax
mov dword [ebp + 0x14], eax
mov dword [ebp + 0x90], eax
mov dword [ebp + 0x10], eax
jmp 0x458dea
push str.Too_many_HUD_elements_defined_n
call fcn.004777d0
add esp, 4
xor eax, eax
cmp edi, eax
je 0x458e1f
cmp ebp, eax
je 0x458e1f
mov ecx, dword [edi + 0x90]
cmp ecx, 0x14
jge 0x458e10
or dword [edi + 0x14], 4
mov dword [edi + ecx*4 + 0x94], ebp
inc dword [edi + 0x90]
jmp 0x458e1f
push str.Too_many_HUD_subelements_defined_n
call fcn.004777d0
add esp, 4
xor eax, eax
mov edx, dword [0x14c7638]
cmp edx, 0x80
mov dword [esp + 0x10], eax
jge 0x458e5d
mov ecx, edx
imul ecx, ecx, 0xe4
add ecx, 0x1519c00
inc edx
mov dword [esp + 0x10], ecx
mov dword [0x14c7638], edx
mov dword [ecx], eax
mov dword [ecx + 4], eax
mov dword [ecx + 0x14], eax
mov dword [ecx + 0x90], eax
mov dword [ecx + 0x10], eax
jmp 0x458e70
push str.Too_many_HUD_elements_defined_n
call fcn.004777d0
mov ecx, dword [esp + 0x14]
add esp, 4
xor eax, eax
cmp edi, eax
je 0x458ea5
cmp ecx, eax
je 0x458ea5
mov edx, dword [edi + 0x90]
cmp edx, 0x14
jge 0x458e96
or dword [edi + 0x14], 4
mov dword [edi + edx*4 + 0x94], ecx
inc dword [edi + 0x90]
jmp 0x458ea5
push str.Too_many_HUD_subelements_defined_n
call fcn.004777d0
add esp, 4
xor eax, eax
mov edx, dword [0x14c7638]
cmp edx, 0x80
mov dword [esp + 0x14], eax
jge 0x458ee3
mov ecx, edx
imul ecx, ecx, 0xe4
add ecx, 0x1519c00
inc edx
mov dword [esp + 0x14], ecx
mov dword [0x14c7638], edx
mov dword [ecx], eax
mov dword [ecx + 4], eax
mov dword [ecx + 0x14], eax
mov dword [ecx + 0x90], eax
mov dword [ecx + 0x10], eax
jmp 0x458ef6
push str.Too_many_HUD_elements_defined_n
call fcn.004777d0
mov ecx, dword [esp + 0x18]
add esp, 4
xor eax, eax
cmp edi, eax
je 0x458f2b
cmp ecx, eax
je 0x458f2b
mov edx, dword [edi + 0x90]
cmp edx, 0x14
jge 0x458f1c
or dword [edi + 0x14], 4
mov dword [edi + edx*4 + 0x94], ecx
inc dword [edi + 0x90]
jmp 0x458f2b
push str.Too_many_HUD_subelements_defined_n
call fcn.004777d0
add esp, 4
xor eax, eax
mov edx, dword [0x14c7638]
cmp edx, 0x80
mov dword [esp + 0x18], eax
jge 0x458f69
mov ecx, edx
imul ecx, ecx, 0xe4
add ecx, 0x1519c00
inc edx
mov dword [esp + 0x18], ecx
mov dword [0x14c7638], edx
mov dword [ecx], eax
mov dword [ecx + 4], eax
mov dword [ecx + 0x14], eax
mov dword [ecx + 0x90], eax
mov dword [ecx + 0x10], eax
jmp 0x458f7c
push str.Too_many_HUD_elements_defined_n
call fcn.004777d0
mov ecx, dword [esp + 0x1c]
add esp, 4
xor eax, eax
cmp edi, eax
je 0x458fb1
cmp ecx, eax
je 0x458fb1
mov edx, dword [edi + 0x90]
cmp edx, 0x14
jge 0x458fa2
or dword [edi + 0x14], 4
mov dword [edi + edx*4 + 0x94], ecx
inc dword [edi + 0x90]
jmp 0x458fb1
push str.Too_many_HUD_subelements_defined_n
call fcn.004777d0
add esp, 4
xor eax, eax
mov ecx, 0x3f640000
mov edx, 0x3f476db7
mov dword [esi + 0x38], ecx
mov dword [esi + 0x3c], ecx
mov dword [esi + 0x4c], ecx
mov cx, word [0x1516548]
mov dword [esi + 0x44], edx
mov dword [esi + 0x54], edx
movzx edx, cx
push 0x15164a4
push edx
mov dword [esi + 0x40], 0x3e624925
mov dword [esi + 0x48], 0x3de00000
mov dword [esi + 0x50], 0x3e624925
mov dword [esi + 0x64], eax
mov dword [esi + 0x60], eax
mov dword [esi + 0x5c], eax
mov dword [esi + 0x58], eax
mov dword [esi + 0x10], 1
mov dword [esi + 0x6c], 0x15164a4
mov word [esi + 0x70], cx
mov word [esi + 0x72], ax
mov word [esi + 0x74], ax
call fcn.0048a200
movzx ecx, word [esi + 0x70]
mov word [esi + 0x76], ax
mov eax, dword [esi + 0x6c]
push eax
push ecx
call fcn.0048a1c0
mov word [esi + 0x78], ax
xor eax, eax
mov dword [edi + 0x38], eax
mov dword [edi + 0x40], eax
mov dword [edi + 0x3c], eax
mov dword [edi + 0x44], eax
mov dword [edi + 0x48], eax
mov dword [edi + 0x50], eax
mov dword [edi + 0x4c], eax
mov dword [edi + 0x54], eax
mov dword [edi + 0x10], eax
mov edx, 1
mov dword [edi + 0x60], edx
mov dword [edi + 0x58], edx
mov ecx, 2
mov dword [edi + 0x64], ecx
mov dword [edi + 0x5c], ecx
mov dword [0x15166a4], esi
mov esi, 0x3d8f5c29
mov dword [ebx + 0x48], esi
mov dword [ebx + 0x38], esi
mov dword [ebx + 0x4c], esi
mov dword [ebx + 0x3c], esi
mov dword [ebx + 0x50], esi
mov dword [ebx + 0x40], esi
mov dword [ebx + 0x54], esi
mov dword [ebx + 0x44], esi
mov esi, dword [ebx + 0x14]
mov dword [ebx + 0x8c], eax
mov dword [ebx + 0x58], edx
mov dword [ebx + 0x5c], ecx
mov dword [ebx + 0x60], edx
mov dword [ebx + 0x64], ecx
mov dword [ebx + 0x10], 4
mov dword [ebx + 0x80], 0x3d0f5c29
add esp, 0x10
mov dword [0x1516624], edi
mov edi, 0x1517cb4
mov dword [ebx + 0x7c], edi
or esi, ecx
mov dword [ebx + 0x14], esi
mov dword [0x15166a8], ebx
mov ebx, 0x3e73b646
mov eax, 0xbe147ae1
mov dword [ebp + 0x48], ebx
mov dword [ebp + 0x38], ebx
mov dword [ebp + 0x50], eax
mov dword [ebp + 0x40], eax
mov dword [ebp + 0x5c], edx
mov dword [ebp + 0x58], edx
mov dword [ebp + 0x64], ecx
mov si, word [0x14c7700]
cmp si, 0xa2
mov dword [ebp + 0x60], ecx
mov dword [ebp + 0x10], ecx
mov dword [ebp + 0x7c], edi
mov dword [ebp + 0x80], 0x3cf5c28f
mov word [ebp + 0x88], dx
ja 0x459116
mov eax, str.UNDEFINED
jmp 0x459121
mov eax, dword [0x14d1bc8]
mov eax, dword [eax + 0x288]
mov dword [ebp + 0x8c], eax
mov eax, dword [ebp + 0x14]
or eax, ecx
cmp si, 0xbb
mov dword [ebp + 0x14], eax
mov eax, dword [esp + 0x10]
mov dword [eax + 0x48], ebx
mov dword [eax + 0x38], ebx
mov ebx, 0xbdc28f5c
mov dword [0x1516628], ebp
mov dword [eax + 0x50], ebx
mov dword [eax + 0x40], ebx
mov dword [eax + 0x5c], edx
mov dword [eax + 0x58], edx
mov dword [eax + 0x64], ecx
mov dword [eax + 0x60], ecx
mov dword [eax + 0x10], ecx
mov dword [eax + 0x7c], edi
mov dword [eax + 0x80], 0x3d0f5c29
mov word [eax + 0x88], dx
ja 0x45917b
mov ebx, str.UNDEFINED
jmp 0x459187
mov ebx, dword [0x14d1bc8]
mov ebx, dword [ebx + 0x2ec]
mov dword [eax + 0x8c], ebx
or dword [eax + 0x14], ecx
mov ebp, 0xbe147ae1
mov dword [0x151662c], eax
mov eax, dword [esp + 0x14]
mov dword [eax + 0x50], ebp
mov dword [eax + 0x40], ebp
mov ebp, dword [eax + 0x14]
mov ebx, 0x3ee04189
or ebp, ecx
cmp si, 0xa3
mov dword [eax + 0x48], ebx
mov dword [eax + 0x38], ebx
mov dword [eax + 0x5c], edx
mov dword [eax + 0x58], edx
mov dword [eax + 0x64], ecx
mov dword [eax + 0x60], ecx
mov dword [eax + 0x10], ecx
mov dword [eax + 0x7c], edi
mov dword [eax + 0x80], 0x3cf5c28f
mov word [eax + 0x88], dx
mov dword [eax + 0x14], ebp
ja 0x4591e8
mov ebp, str.UNDEFINED
jmp 0x4591f4
mov ebp, dword [0x14d1bc8]
mov ebp, dword [ebp + 0x28c]
mov dword [eax + 0x8c], ebp
mov dword [0x1516630], eax
mov eax, dword [esp + 0x18]
mov dword [eax + 0x5c], edx
mov dword [eax + 0x58], edx
mov word [eax + 0x88], dx
mov edx, dword [eax + 0x14]
mov dword [eax + 0x48], ebx
mov dword [eax + 0x38], ebx
mov ebx, 0x3f666666
mov dword [eax + 0x7c], edi
pop edi
or edx, ecx
mov dword [eax + 0x4c], ebx
mov dword [eax + 0x3c], ebx
mov ebx, 0xbdc28f5c
cmp si, 0xbc
pop esi
pop ebp
mov dword [eax + 0x50], ebx
mov dword [eax + 0x40], ebx
mov dword [eax + 0x64], ecx
mov dword [eax + 0x60], ecx
mov dword [eax + 0x10], ecx
mov dword [eax + 0x80], 0x3d0f5c29
mov dword [eax + 0x14], edx
pop ebx
ja 0x459269
mov ecx, str.UNDEFINED
mov dword [eax + 0x8c], ecx
mov dword [0x1516634], eax
add esp, 0xc
ret
mov ecx, dword [0x14d1bc8]
mov ecx, dword [ecx + 0x2f0]
mov dword [eax + 0x8c], ecx
mov dword [0x1516634], eax
add esp, 0xc
ret