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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x18
cmp edx, 0x4ff
ja 0x45ce45
mov edi, dword [ecx]
mov dword [ebp - 0x18], edx
shr edx, 5
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0x14], edx
test edi, edi
je 0x45cae3
lea eax, [edi - 1]
mov ecx, 1
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x14]
sub ecx, edi
lea edx, [edi + eax]
lea esi, [edi + eax - 1]
mov eax, dword [ebp - 0x10]
nop word cs:[eax + eax]
nop dword [eax + eax]
cmp dword [ebp - 0x1c], 0x27
ja 0x45ce28
cmp esi, 0x28
jae 0x45ce24
mov ebx, dword [eax + edi*4]
inc ecx
dec esi
mov dword [eax + edx*4], ebx
add eax, 0xfffffffc
cmp ecx, 1
jne 0x45cac0
mov edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x10]
cmp edx, 0x20
jb 0x45cd7b
mov esi, dword [ebp - 0x14]
mov ecx, 1
mov dword [eax + 4], 0
cmp esi, 2
cmovae ecx, esi
cmp edx, 0x40
jb 0x45cd7b
cmp ecx, 2
mov dword [eax + 8], 0
je 0x45cd7b
cmp ecx, 3
mov dword [eax + 0xc], 0
je 0x45cd7b
cmp ecx, 4
mov dword [eax + 0x10], 0
je 0x45cd7b
cmp ecx, 5
mov dword [eax + 0x14], 0
je 0x45cd7b
cmp ecx, 6
mov dword [eax + 0x18], 0
je 0x45cd7b
cmp ecx, 7
mov dword [eax + 0x1c], 0
je 0x45cd7b
cmp ecx, 8
mov dword [eax + 0x20], 0
je 0x45cd7b
cmp ecx, 9
mov dword [eax + 0x24], 0
je 0x45cd7b
cmp ecx, 0xa
mov dword [eax + 0x28], 0
je 0x45cd7b
cmp ecx, 0xb
mov dword [eax + 0x2c], 0
je 0x45cd7b
cmp ecx, 0xc
mov dword [eax + 0x30], 0
je 0x45cd7b
cmp ecx, 0xd
mov dword [eax + 0x34], 0
je 0x45cd7b
cmp ecx, 0xe
mov dword [eax + 0x38], 0
je 0x45cd7b
cmp ecx, 0xf
mov dword [eax + 0x3c], 0
je 0x45cd7b
cmp ecx, 0x10
mov dword [eax + 0x40], 0
je 0x45cd7b
cmp ecx, 0x11
mov dword [eax + 0x44], 0
je 0x45cd7b
cmp ecx, 0x12
mov dword [eax + 0x48], 0
je 0x45cd7b
cmp ecx, 0x13
mov dword [eax + 0x4c], 0
je 0x45cd7b
cmp ecx, 0x14
mov dword [eax + 0x50], 0
je 0x45cd7b
cmp ecx, 0x15
mov dword [eax + 0x54], 0
je 0x45cd7b
cmp ecx, 0x16
mov dword [eax + 0x58], 0
je 0x45cd7b
cmp ecx, 0x17
mov dword [eax + 0x5c], 0
je 0x45cd7b
cmp ecx, 0x18
mov dword [eax + 0x60], 0
je 0x45cd7b
cmp ecx, 0x19
mov dword [eax + 0x64], 0
je 0x45cd7b
cmp ecx, 0x1a
mov dword [eax + 0x68], 0
je 0x45cd7b
cmp ecx, 0x1b
mov dword [eax + 0x6c], 0
je 0x45cd7b
cmp ecx, 0x1c
mov dword [eax + 0x70], 0
je 0x45cd7b
cmp ecx, 0x1d
mov dword [eax + 0x74], 0
je 0x45cd7b
cmp ecx, 0x1e
mov dword [eax + 0x78], 0
je 0x45cd7b
cmp ecx, 0x1f
mov dword [eax + 0x7c], 0
je 0x45cd7b
cmp ecx, 0x20
mov dword [eax + 0x80], 0
je 0x45cd7b
cmp ecx, 0x21
mov dword [eax + 0x84], 0
je 0x45cd7b
cmp ecx, 0x22
mov dword [eax + 0x88], 0
je 0x45cd7b
cmp ecx, 0x23
mov dword [eax + 0x8c], 0
je 0x45cd7b
cmp ecx, 0x24
mov dword [eax + 0x90], 0
je 0x45cd7b
cmp ecx, 0x25
mov dword [eax + 0x94], 0
je 0x45cd7b
cmp ecx, 0x26
mov dword [eax + 0x98], 0
je 0x45cd7b
cmp ecx, 0x27
mov dword [eax + 0x9c], 0
je 0x45cd7b
cmp ecx, 0x28
mov dword [eax + 0xa0], 0
jne 0x45ce5e
mov esi, dword [eax]
and edx, 0x1f
mov eax, edx
mov dword [ebp - 0x1c], edx
add esi, dword [ebp - 0x14]
test edx, edx
je 0x45ce17
lea ecx, [esi - 1]
cmp ecx, 0x27
ja 0x45ce31
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x18]
mov edi, dword [eax + esi*4]
neg ecx
and ecx, 0x1f
mov dword [ebp - 0x18], ecx
mov eax, edi
shr eax, cl
mov ecx, esi
test eax, eax
je 0x45cdc6
cmp esi, 0x27
ja 0x45ce24
mov ecx, dword [ebp - 0x10]
mov dword [ecx + esi*4 + 4], eax
lea ecx, [esi + 1]
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x20], ecx
inc eax
cmp eax, esi
mov dword [ebp - 0x24], eax
jae 0x45ce05
mov edx, dword [ebp - 0x10]
nop word [eax + eax]
lea eax, [esi - 2]
cmp eax, 0x28
jae 0x45ce2c
mov ebx, dword [edx + esi*4 - 4]
mov ecx, dword [ebp - 0x1c]
shl edi, cl
mov ecx, dword [ebp - 0x18]
mov eax, ebx
shr eax, cl
or eax, edi
mov edi, ebx
mov dword [edx + esi*4], eax
dec esi
cmp dword [ebp - 0x24], esi
jb 0x45cde0
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x20]
shl dword [eax + edx*4 + 4], cl
jmp 0x45ce1a
mov eax, dword [ebp - 0x10]
mov dword [eax], esi
add esp, 0x18
pop esi
pop edi
pop ebx
pop ebp
ret
mov ecx, esi
jmp 0x45ce31
neg ecx
jmp 0x45ce31
mov ecx, 0xffffffff
mov edx, 0x28
push 0x60d830
call fcn.0045a150
add esp, 4
ud2
mov ecx, 0x60d85a
mov edx, 0x1d
push 0x60d830
call fcn.0045aec0
add esp, 4
ud2
mov ecx, 0x28
jmp 0x45ce31