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

Disassembly:
sub esp, 0x54
xor ecx, ecx
mov eax, dword [esp + 0x70]
push ebx
mov edx, dword [esp + 0x8c]
push esi
mov dword [esp + 8], ecx
push edi
mov ebx, dword [esp + 0x9c]
push ebp
mov dword [esp + 0x14], eax
mov dword [esp + 0x60], eax
mov dword [edx], ecx
mov dword [esp + 0x4c], ecx
mov dword [ebx], ecx
mov eax, dword [esp + 0x14]
add dword [esp + 0x14], 4
mov eax, dword [eax]
mov dword [esp + 0x18], 0x20
mov dword [esp + 0x10], eax
mov eax, dword [0x1c4b0828]
mov ecx, dword [esp + 0x10]
and eax, ecx
cmp eax, 3
je 0x1c44a2f3
mov eax, 0xffffffff
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x54
ret
mov eax, dword [esp + 0x10]
mov ecx, dword [0x1c4b082c]
shr eax, 2
and eax, ecx
je 0x1c44a311
mov eax, 0xffffffff
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x54
ret
mov edx, 0xd
mov esi, dword [esp + 0x10]
shr esi, 5
mov eax, dword [0x1c4b0840]
and esi, eax
mov ecx, 1
mov eax, 8
mov ebx, dword [esp + 0x10]
mov edi, dword [esp + 0x14]
shr ebx, 8
inc edi
mov dword [esp + 0x10], ebx
xor ebx, ebx
mov bl, byte [edi - 1]
mov ebp, dword [esp + 0x10]
shl ebx, 0x18
mov dword [esp + 0x14], edi
or ebp, ebx
mov ebx, dword [esp + 0x18]
add ebx, eax
mov dword [esp + 0x10], ebp
dec ecx
mov dword [esp + 0x18], ebx
jne 0x1c44a32e
xor ecx, ecx
test esi, esi
je 0x1c44a584
mov eax, 0x10000
mov dword [esp + 0x48], ecx
mov dword [esp + 0x3c], eax
mov dword [esp + 0x38], eax
mov dword [esp + 0x44], ecx
jle 0x1c44a54b
mov dword [esp + 0x58], esi
mov ecx, edx
mov eax, dword [esp + 0x10]
and ecx, 7
add edx, 0x10
shr eax, cl
mov ebx, dword [0x1c4b0860]
add ecx, 0x10
and eax, ebx
cmp ecx, 8
mov dword [esp + 0x5c], eax
jb 0x1c44a3e7
shr ecx, 3
mov eax, 8
mov ebx, dword [esp + 0x10]
mov esi, dword [esp + 0x14]
shr ebx, 8
inc esi
mov edi, dword [esp + 0x18]
mov dword [esp + 0x10], ebx
xor ebx, ebx
mov ebp, dword [esp + 0x10]
mov bl, byte [esi - 1]
add edi, eax
shl ebx, 0x18
mov dword [esp + 0x14], esi
or ebp, ebx
mov dword [esp + 0x18], edi
dec ecx
mov dword [esp + 0x10], ebp
jne 0x1c44a3b4
mov ecx, edx
mov esi, dword [esp + 0x10]
and ecx, 7
add edx, 0x10
shr esi, cl
mov eax, dword [0x1c4b0860]
add ecx, 0x10
and esi, eax
cmp ecx, 8
jb 0x1c44a43f
shr ecx, 3
mov eax, 8
mov ebx, dword [esp + 0x10]
mov edi, dword [esp + 0x14]
shr ebx, 8
inc edi
mov dword [esp + 0x10], ebx
xor ebx, ebx
mov bl, byte [edi - 1]
mov ebp, dword [esp + 0x10]
shl ebx, 0x18
mov dword [esp + 0x14], edi
or ebp, ebx
mov ebx, dword [esp + 0x18]
add ebx, eax
mov dword [esp + 0x10], ebp
dec ecx
mov dword [esp + 0x18], ebx
jne 0x1c44a40c
mov ecx, edx
mov edi, dword [esp + 0x10]
and ecx, 7
add edx, 0x10
shr edi, cl
mov eax, dword [0x1c4b0860]
add ecx, 0x10
and edi, eax
cmp ecx, 8
jb 0x1c44a49b
shr ecx, 3
mov ebx, 8
mov eax, dword [esp + 0x10]
mov ebp, dword [esp + 0x14]
shr eax, 8
mov dword [esp + 0x10], eax
xor eax, eax
mov al, byte [ebp]
mov ebp, dword [esp + 0x10]
shl eax, 0x18
or ebp, eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x10], ebp
mov ebp, dword [esp + 0x18]
mov dword [esp + 0x14], eax
add ebp, ebx
dec ecx
mov dword [esp + 0x18], ebp
jne 0x1c44a464
mov ecx, edx
mov ebx, dword [esp + 0x10]
and ecx, 7
add edx, 0x10
shr ebx, cl
mov eax, dword [0x1c4b0860]
add ecx, 0x10
and ebx, eax
cmp ecx, 8
jb 0x1c44a4f3
shr ecx, 3
mov eax, dword [esp + 0x10]
mov ebp, dword [esp + 0x14]
shr eax, 8
mov dword [esp + 0x10], eax
xor eax, eax
mov al, byte [ebp]
mov ebp, dword [esp + 0x10]
shl eax, 0x18
or ebp, eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x10], ebp
mov ebp, dword [esp + 0x18]
mov dword [esp + 0x14], eax
add ebp, 8
dec ecx
mov dword [esp + 0x18], ebp
jne 0x1c44a4bb
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x38]
cmp eax, ecx
jl 0x1c44a501
mov eax, ecx
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x38], eax
cmp esi, ecx
mov eax, esi
jl 0x1c44a511
mov eax, ecx
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x5c]
add edi, eax
mov eax, dword [esp + 0x44]
dec edi
cmp edi, eax
jg 0x1c44a526
mov edi, eax
lea eax, [esi + ebx]
mov ecx, dword [esp + 0x48]
dec eax
mov dword [esp + 0x44], edi
cmp eax, ecx
jg 0x1c44a538
mov eax, ecx
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x58]
dec eax
mov dword [esp + 0x58], eax
jne 0x1c44a38a
mov ecx, dword [esp + 0xa4]
mov eax, dword [esp + 0x3c]
mov ebx, dword [esp + 0x38]
mov ebp, dword [esp + 0x3c]
mov dword [ecx], eax
mov dword [ecx + 4], ebx
mov eax, dword [esp + 0x48]
sub eax, ebp
inc eax
mov dword [ecx + 8], eax
mov eax, dword [esp + 0x44]
sub eax, ebx
inc eax
mov dword [ecx + 0xc], eax
mov ecx, dword [esp + 0xa0]
mov dword [ecx], 1
xor edi, edi
xor esi, esi
mov ecx, edx
mov ebx, dword [esp + 0x10]
and ecx, 7
inc edx
mov eax, dword [0x1c4b0824]
mov dword [esp + 0x54], edi
shr ebx, cl
and ebx, eax
inc ecx
cmp ecx, 8
jb 0x1c44a5e0
shr ecx, 3
mov eax, dword [esp + 0x10]
mov ebp, dword [esp + 0x14]
shr eax, 8
mov dword [esp + 0x10], eax
xor eax, eax
mov al, byte [ebp]
mov ebp, dword [esp + 0x10]
shl eax, 0x18
or ebp, eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x10], ebp
mov ebp, dword [esp + 0x18]
mov dword [esp + 0x14], eax
add ebp, 8
dec ecx
mov dword [esp + 0x18], ebp
jne 0x1c44a5a8
test ebx, ebx
je 0x1c44a6fd
mov ecx, edx
mov edi, dword [esp + 0x10]
and ecx, 7
add edx, 8
shr edi, cl
mov eax, dword [0x1c4b0840]
add ecx, 8
and edi, eax
cmp ecx, 8
jb 0x1c44a640
shr ecx, 3
mov esi, 8
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
shr eax, 8
inc ebx
mov dword [esp + 0x10], eax
xor eax, eax
mov al, byte [ebx - 1]
mov ebp, dword [esp + 0x10]
shl eax, 0x18
mov dword [esp + 0x14], ebx
or ebp, eax
mov eax, dword [esp + 0x18]
add eax, esi
mov dword [esp + 0x10], ebp
dec ecx
mov dword [esp + 0x18], eax
jne 0x1c44a60d
mov ecx, edx
mov esi, dword [esp + 0x10]
and ecx, 7
add edx, 8
shr esi, cl
mov eax, dword [0x1c4b0840]
add ecx, 8
and esi, eax
cmp ecx, 8
jb 0x1c44a69c
shr ecx, 3
mov ebx, 8
mov eax, dword [esp + 0x10]
mov ebp, dword [esp + 0x14]
shr eax, 8
mov dword [esp + 0x10], eax
xor eax, eax
mov al, byte [ebp]
mov ebp, dword [esp + 0x10]
shl eax, 0x18
or ebp, eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x10], ebp
mov ebp, dword [esp + 0x18]
mov dword [esp + 0x14], eax
add ebp, ebx
dec ecx
mov dword [esp + 0x18], ebp
jne 0x1c44a665
mov ecx, edx
mov eax, dword [esp + 0x10]
and ecx, 7
add edx, 8
shr eax, cl
mov ebx, dword [0x1c4b0840]
add ecx, 8
and eax, ebx
cmp ecx, 8
mov dword [esp + 0x54], eax
jb 0x1c44a6fd
shr ecx, 3
mov ebx, 8
mov eax, dword [esp + 0x10]
mov ebp, dword [esp + 0x14]
shr eax, 8
mov dword [esp + 0x10], eax
xor eax, eax
mov al, byte [ebp]
mov ebp, dword [esp + 0x10]
shl eax, 0x18
or ebp, eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x10], ebp
mov ebp, dword [esp + 0x18]
mov dword [esp + 0x14], eax
add ebp, ebx
dec ecx
mov dword [esp + 0x18], ebp
jne 0x1c44a6c6
shl esi, 8
mov eax, dword [esp + 0x54]
shl edi, 0x10
mov ecx, dword [esp + 0x94]
or esi, edi
or esi, eax
mov eax, dword [esp + 0x10]
mov ebx, dword [0x1c4b0824]
mov dword [ecx], esi
mov ecx, edx
inc edx
and ecx, 7
shr eax, cl
and eax, ebx
inc ecx
cmp ecx, 8
jb 0x1c44a769
shr ecx, 3
mov esi, 8
mov ebx, dword [esp + 0x10]
mov edi, dword [esp + 0x14]
shr ebx, 8
inc edi
mov dword [esp + 0x10], ebx
xor ebx, ebx
mov bl, byte [edi - 1]
mov ebp, dword [esp + 0x10]
shl ebx, 0x18
mov dword [esp + 0x14], edi
or ebp, ebx
mov ebx, dword [esp + 0x18]
add ebx, esi
mov dword [esp + 0x10], ebp
dec ecx
mov dword [esp + 0x18], ebx
jne 0x1c44a736
test eax, eax
jne 0x1c44a77a
mov eax, 0xffffffff
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x54
ret
mov ecx, edx
mov ebx, dword [esp + 0x10]
and ecx, 7
add edx, 4
shr ebx, cl
mov eax, dword [0x1c4b0830]
add ecx, 4
and ebx, eax
cmp ecx, 8
jb 0x1c44a7d2
shr ecx, 3
mov esi, 8
mov eax, dword [esp + 0x10]
mov edi, dword [esp + 0x14]
shr eax, 8
inc edi
mov dword [esp + 0x10], eax
xor eax, eax
mov al, byte [edi - 1]
mov ebp, dword [esp + 0x10]
shl eax, 0x18
mov dword [esp + 0x14], edi
or ebp, eax
mov eax, dword [esp + 0x18]
add eax, esi
mov dword [esp + 0x10], ebp
dec ecx
mov dword [esp + 0x18], eax
jne 0x1c44a79f
test ebx, ebx
jne 0x1c44a7e3
mov eax, 0xffffffff
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x54
ret
cmp ebx, 0xc
jbe 0x1c44a7f5
mov eax, 0xffffffff
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x54
ret
mov eax, dword [esp + 0x6c]
mov esi, 1
cmp bl, 1
nop
mov byte [eax], bl
jl 0x1c44a872
mov ecx, edx
mov ebx, dword [esp + 0x10]
and ecx, 7
add edx, 4
shr ebx, cl
mov eax, dword [0x1c4b0830]
add ecx, 4
and ebx, eax
cmp ecx, 8
jb 0x1c44a862
shr ecx, 3
mov edi, 8
mov eax, dword [esp + 0x10]
mov ebp, dword [esp + 0x14]
shr eax, 8
mov dword [esp + 0x10], eax
xor eax, eax
mov al, byte [ebp]
mov ebp, dword [esp + 0x10]
shl eax, 0x18
or ebp, eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x10], ebp
mov ebp, dword [esp + 0x18]
mov dword [esp + 0x14], eax
add ebp, edi
dec ecx
mov dword [esp + 0x18], ebp
jne 0x1c44a82b
mov eax, dword [esp + 0x6c]
inc esi
mov byte [esi + eax - 1], bl
movsx ecx, byte [eax]
cmp ecx, esi
jge 0x1c44a806
add edx, 7
mov eax, dword [esp + 0x80]
shr edx, 3
xor edi, edi
add edx, eax
mov ebx, edx
mov ebp, edx
mov dword [esp + 0x14], edx
mov eax, dword [esp + 0x14]
add dword [esp + 0x14], 4
mov eax, dword [eax]
mov dword [esp + 0x18], 0x20
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0x78]
mov eax, dword [ecx]
imul eax, dword [ecx + 4]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x70]
mov edx, dword [eax + 4]
mov eax, dword [eax]
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], edx
lea ecx, [edx + 0x1f]
mov eax, dword [esp + 0x9c]
and ecx, 0xffffffe0
mov esi, dword [esp + 0x88]
xor edx, edx
mov dword [esp + 0x28], ecx
shr ecx, 3
test esi, esi
mov dword [eax], ecx
jne 0x1c44aee9
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x40], edx
mov dword [esp + 0x4c], 1
mov eax, dword [ecx]
mov dword [esp + 0x1c], edx
cmp eax, edx
jle 0x1c44ae9b
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x20], 0
mov eax, dword [ecx + 4]
test eax, eax
jle 0x1c44ae84
mov ecx, edi
mov edx, dword [esp + 0x10]
and ecx, 7
inc edi
shr edx, cl
mov eax, dword [0x1c4b0824]
inc ecx
and edx, eax
cmp ecx, 8
jb 0x1c44a970
shr ecx, 3
mov eax, dword [esp + 0x10]
mov esi, dword [esp + 0x14]
shr eax, 8
mov dword [esp + 0x10], eax
xor eax, eax
mov al, byte [esi]
mov esi, dword [esp + 0x10]
shl eax, 0x18
or esi, eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x10], esi
mov esi, dword [esp + 0x18]
mov dword [esp + 0x14], eax
add esi, 8
dec ecx
mov dword [esp + 0x18], esi
jne 0x1c44a939
mov ecx, dword [esp + 0x7c]
mov eax, dword [esp + 0x40]
cmp byte [eax + ecx], 0
je 0x1c44ac5a
test edx, edx
je 0x1c44aa4f
mov ecx, edi
mov esi, dword [esp + 0x10]
and ecx, 7
inc edi
shr esi, cl
mov eax, dword [0x1c4b0824]
inc ecx
mov dword [esp + 0x34], 1
and esi, eax
cmp ecx, 8
jb 0x1c44a9e5
shr ecx, 3
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
shr eax, 8
mov dword [esp + 0x10], eax
xor eax, eax
mov al, byte [edx]
mov edx, dword [esp + 0x10]
shl eax, 0x18
or edx, eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0x18]
mov dword [esp + 0x14], eax
add edx, 8
dec ecx
mov dword [esp + 0x18], edx
jne 0x1c44a9ae
mov edx, dword [esp + 0x74]
push esi
push 1
push 1
mov ecx, dword [edx]
mov eax, dword [edx + 4]
push 0
push ecx
imul ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x40]
push eax
imul eax, dword [esp + 0x38]
push ecx
push eax
mov ecx, dword [esp + 0x50]
mov eax, dword [esp + 0x48]
push ecx
push edx
mov ecx, dword [esp + 0xb8]
push eax
mov edx, dword [esp + 0xb8]
push ecx
mov eax, dword [esp + 0x9c]
push edx
mov ecx, dword [esp + 0x9c]
push eax
push ecx
call fcn.1c449de0
add esp, 0x3c
test eax, eax
je 0x1c44ae63
mov eax, 0xffffffff
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x54
ret
mov ecx, edi
mov edx, dword [esp + 0x10]
and ecx, 7
inc edi
shr edx, cl
mov eax, dword [0x1c4b0824]
inc ecx
mov dword [esp + 0x34], 0
and edx, eax
cmp ecx, 8
jb 0x1c44aaaa
shr ecx, 3
mov eax, dword [esp + 0x10]
mov esi, dword [esp + 0x14]
shr eax, 8
mov dword [esp + 0x10], eax
xor eax, eax
mov al, byte [esi]
mov esi, dword [esp + 0x10]
shl eax, 0x18
or esi, eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x10], esi
mov esi, dword [esp + 0x18]
mov dword [esp + 0x14], eax
add esi, 8
dec ecx
mov dword [esp + 0x18], esi
jne 0x1c44aa73
test edx, edx
je 0x1c44abeb
mov ecx, edi
mov esi, dword [esp + 0x10]
and ecx, 7
add edi, 8
shr esi, cl
mov eax, dword [0x1c4b0840]
add ecx, 8
and esi, eax
cmp ecx, 8
jb 0x1c44ab09
shr ecx, 3
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
shr eax, 8
mov dword [esp + 0x10], eax
xor eax, eax
mov al, byte [edx]
mov edx, dword [esp + 0x10]
shl eax, 0x18
or edx, eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0x18]
mov dword [esp + 0x14], eax
add edx, 8
dec ecx
mov dword [esp + 0x18], edx
jne 0x1c44aad2
cmp esi, 0xff
jne 0x1c44ab68
mov ecx, edi
mov esi, dword [esp + 0x10]
and ecx, 7
add edi, 0x18
shr esi, cl
mov eax, dword [0x1c4b0880]
add ecx, 0x18
and esi, eax
cmp ecx, 8
jb 0x1c44ab68
shr ecx, 3
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
shr eax, 8
mov dword [esp + 0x10], eax
xor eax, eax
mov al, byte [edx]
mov edx, dword [esp + 0x10]
shl eax, 0x18
or edx, eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0x18]
mov dword [esp + 0x14], eax
add edx, 8
dec ecx
mov dword [esp + 0x18], edx
jne 0x1c44ab31
add edi, 7
mov edx, dword [esp + 0x74]
shr edi, 3
push 0
add ebx, edi
mov ecx, dword [edx]
mov eax, dword [edx + 4]
push 0
mov dword [esp + 0x1c], ebx
push 1
push ebx
push ecx
imul ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x40]
push eax
imul eax, dword [esp + 0x38]
push ecx
push eax
mov ecx, dword [esp + 0x50]
mov eax, dword [esp + 0x48]
push ecx
push edx
mov ecx, dword [esp + 0xb8]
push eax
mov edx, dword [esp + 0xb8]
push ecx
mov eax, dword [esp + 0x9c]
push edx
mov ecx, dword [esp + 0x9c]
push eax
push ecx
call fcn.1c449de0
add esp, 0x3c
cmp eax, 0xffffffff
je 0x1c44aeb5
mov ecx, esi
mov edx, dword [esp + 0x14]
sub ecx, edx
add ecx, ebp
cmp ecx, eax
jne 0x1c44aec2
add ebp, esi
jmp 0x1c44ae44
add edi, 7
mov edx, dword [esp + 0x74]
shr edi, 3
push 0
add ebx, edi
mov ecx, dword [edx]
mov eax, dword [edx + 4]
push 0
mov dword [esp + 0x1c], ebx
push 1
push ebx
push ecx
imul ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x40]
push eax
imul eax, dword [esp + 0x38]
push ecx
push eax
mov ecx, dword [esp + 0x50]
mov eax, dword [esp + 0x48]
push ecx
push edx
mov ecx, dword [esp + 0xb8]
push eax
mov edx, dword [esp + 0xb8]
push ecx
mov eax, dword [esp + 0x9c]
push edx
mov ecx, dword [esp + 0x9c]
push eax
push ecx
call fcn.1c449de0
add esp, 0x3c
cmp eax, 0xffffffff
je 0x1c44aecf
jmp 0x1c44ae42
test edx, edx
je 0x1c44acb9
mov dword [esp + 0x34], 1
mov edx, edi
inc edi
and edx, 7
inc edx
cmp edx, 8
jb 0x1c44ae63
shr edx, 3
mov ecx, 8
mov eax, dword [esp + 0x10]
mov esi, dword [esp + 0x14]
shr eax, 8
mov dword [esp + 0x10], eax
xor eax, eax
mov al, byte [esi]
mov esi, dword [esp + 0x10]
shl eax, 0x18
or esi, eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x10], esi
mov esi, dword [esp + 0x18]
mov dword [esp + 0x14], eax
add esi, ecx
dec edx
mov dword [esp + 0x18], esi
jne 0x1c44ac7e
jmp 0x1c44ae63
mov ecx, edi
mov edx, dword [esp + 0x10]
and ecx, 7
inc edi
shr edx, cl
mov eax, dword [0x1c4b0824]
inc ecx
mov dword [esp + 0x34], 0
and edx, eax
cmp ecx, 8
jb 0x1c44ad14
shr ecx, 3
mov eax, dword [esp + 0x10]
mov esi, dword [esp + 0x14]
shr eax, 8
mov dword [esp + 0x10], eax
xor eax, eax
mov al, byte [esi]
mov esi, dword [esp + 0x10]
shl eax, 0x18
or esi, eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x10], esi
mov esi, dword [esp + 0x18]
mov dword [esp + 0x14], eax
add esi, 8
dec ecx
mov dword [esp + 0x18], esi
jne 0x1c44acdd
test edx, edx
je 0x1c44add8
mov ecx, edi
mov esi, dword [esp + 0x10]
and ecx, 7
add edi, 8
shr esi, cl
mov eax, dword [0x1c4b0840]
add ecx, 8
and esi, eax
cmp ecx, 8
jb 0x1c44ad77
shr ecx, 3
mov edx, 8
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
shr eax, 8
mov dword [esp + 0x10], eax
xor eax, eax
mov al, byte [ebx]
mov ebx, dword [esp + 0x10]
shl eax, 0x18
or ebx, eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x14], eax
add ebx, edx
dec ecx
mov dword [esp + 0x18], ebx
jne 0x1c44ad41
cmp esi, 0xff
jne 0x1c44add4
mov ecx, edi
mov esi, dword [esp + 0x10]
and ecx, 7
mov eax, dword [0x1c4b0880]
shr esi, cl
and esi, eax
add ecx, 0x18
cmp ecx, 8
jb 0x1c44add4
shr ecx, 3
mov eax, 8
mov edx, dword [esp + 0x10]
mov edi, dword [esp + 0x14]
shr edx, 8
inc edi
mov dword [esp + 0x10], edx
xor edx, edx
mov dl, byte [edi - 1]
mov ebx, dword [esp + 0x10]
shl edx, 0x18
mov dword [esp + 0x14], edi
or ebx, edx
mov edx, dword [esp + 0x18]
add edx, eax
mov dword [esp + 0x10], ebx
dec ecx
mov dword [esp + 0x18], edx
jne 0x1c44ada1
add ebp, esi
jmp 0x1c44ae44
add edi, 7
mov edx, dword [esp + 0x74]
shr edi, 3
push 0
add ebx, edi
mov eax, dword [edx]
mov ecx, dword [edx + 4]
push 0
mov dword [esp + 0x1c], ebx
push 1
push ebx
push eax
imul eax, dword [esp + 0x30]
mov edx, dword [esp + 0x40]
push ecx
imul ecx, dword [esp + 0x38]
push eax
push ecx
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x48]
push eax
push edx
mov eax, dword [esp + 0xb8]
push ecx
mov edx, dword [esp + 0xb8]
push eax
mov ecx, dword [esp + 0x9c]
push edx
mov eax, dword [esp + 0x9c]
push ecx
push eax
call fcn.1c449de0
add esp, 0x3c
cmp eax, 0xffffffff
je 0x1c44aedc
add ebp, eax
mov ebx, ebp
mov dword [esp + 0x14], ebp
mov eax, dword [esp + 0x14]
add dword [esp + 0x14], 4
mov eax, dword [eax]
mov dword [esp + 0x18], 0x20
mov dword [esp + 0x10], eax
xor edi, edi
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x20]
inc eax
inc ecx
mov edx, dword [esp + 0x78]
mov dword [esp + 0x40], eax
mov dword [esp + 0x20], ecx
mov esi, dword [edx + 4]
cmp esi, ecx
jg 0x1c44a91d
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x78]
inc eax
mov dword [esp + 0x1c], eax
mov edx, dword [ecx]
cmp edx, eax
jg 0x1c44a906
mov eax, dword [esp + 0x34]
test eax, eax
je 0x1c44b163
add edi, 7
shr edi, 3
lea ebp, [edi + ebx]
jmp 0x1c44b163
mov eax, 0xffffffff
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x54
ret
mov eax, 0xffffffff
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x54
ret
mov eax, 0xffffffff
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x54
ret
mov eax, 0xffffffff
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x54
ret
mov eax, dword [esp + 0x24]
test eax, eax
lea ecx, [eax - 1]
mov dword [esp + 0x24], ecx
je 0x1c44b159
mov ecx, edi
mov edx, dword [esp + 0x10]
and ecx, 7
inc edi
shr edx, cl
mov eax, dword [0x1c4b0824]
inc ecx
and edx, eax
cmp ecx, 8
jb 0x1c44af4f
shr ecx, 3
mov eax, dword [esp + 0x10]
mov esi, dword [esp + 0x14]
shr eax, 8
mov dword [esp + 0x10], eax
xor eax, eax
mov al, byte [esi]
mov esi, dword [esp + 0x10]
shl eax, 0x18
or esi, eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x10], esi
mov esi, dword [esp + 0x18]
mov dword [esp + 0x14], eax
add esi, 8
dec ecx
mov dword [esp + 0x18], esi
jne 0x1c44af18
test edx, edx
je 0x1c44afaa
mov edx, edi
inc edi
and edx, 7
inc edx
cmp edx, 8
jb 0x1c44af9d
shr edx, 3
mov ecx, 8
mov eax, dword [esp + 0x10]
mov esi, dword [esp + 0x14]
shr eax, 8
mov dword [esp + 0x10], eax
xor eax, eax
mov al, byte [esi]
mov esi, dword [esp + 0x10]
shl eax, 0x18
or esi, eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x10], esi
mov esi, dword [esp + 0x18]
mov dword [esp + 0x14], eax
add esi, ecx
dec edx
mov dword [esp + 0x18], esi
jne 0x1c44af67
mov dword [esp + 0x50], 1
jmp 0x1c44b146
mov ecx, edi
mov edx, dword [esp + 0x10]
and ecx, 7
inc edi
shr edx, cl
mov eax, dword [0x1c4b0824]
inc ecx
mov dword [esp + 0x50], 0
and edx, eax
cmp ecx, 8
jb 0x1c44b005
shr ecx, 3
mov eax, dword [esp + 0x10]
mov esi, dword [esp + 0x14]
shr eax, 8
mov dword [esp + 0x10], eax
xor eax, eax
mov al, byte [esi]
mov esi, dword [esp + 0x10]
shl eax, 0x18
or esi, eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x10], esi
mov esi, dword [esp + 0x18]
mov dword [esp + 0x14], eax
add esi, 8
dec ecx
mov dword [esp + 0x18], esi
jne 0x1c44afce
test edx, edx
je 0x1c44b0c9
mov ecx, edi
mov esi, dword [esp + 0x10]
and ecx, 7
add edi, 8
shr esi, cl
mov eax, dword [0x1c4b0840]
add ecx, 8
and esi, eax
cmp ecx, 8
jb 0x1c44b068
shr ecx, 3
mov edx, 8
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
shr eax, 8
mov dword [esp + 0x10], eax
xor eax, eax
mov al, byte [ebx]
mov ebx, dword [esp + 0x10]
shl eax, 0x18
or ebx, eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x14], eax
add ebx, edx
dec ecx
mov dword [esp + 0x18], ebx
jne 0x1c44b032
cmp esi, 0xff
jne 0x1c44b0c5
mov ecx, edi
mov esi, dword [esp + 0x10]
and ecx, 7
mov eax, dword [0x1c4b0880]
shr esi, cl
and esi, eax
add ecx, 0x18
cmp ecx, 8
jb 0x1c44b0c5
shr ecx, 3
mov eax, 8
mov edx, dword [esp + 0x10]
mov edi, dword [esp + 0x14]
shr edx, 8
inc edi
mov dword [esp + 0x10], edx
xor edx, edx
mov dl, byte [edi - 1]
mov ebx, dword [esp + 0x10]
shl edx, 0x18
mov dword [esp + 0x14], edi
or ebx, edx
mov edx, dword [esp + 0x18]
add edx, eax
mov dword [esp + 0x10], ebx
dec ecx
mov dword [esp + 0x18], edx
jne 0x1c44b092
add ebp, esi
jmp 0x1c44b127
add edi, 7
push 0
shr edi, 3
push 0
add ebx, edi
push 1
mov edx, dword [esp + 0x80]
push ebp
mov dword [esp + 0x24], ebx
nop
mov ecx, dword [edx + 4]
mov eax, dword [edx]
mov edx, dword [esp + 0x3c]
push eax
mov eax, dword [esp + 0x44]
push ecx
mov ecx, dword [esp + 0x40]
push 0
push 0
push eax
mov eax, dword [esp + 0xb0]
push edx
mov edx, dword [esp + 0x94]
push ecx
mov ecx, dword [esp + 0x94]
push 0
push eax
push edx
push ecx
call fcn.1c449de0
add esp, 0x3c
cmp eax, 0xffffffff
je 0x1c44b189
add ebp, eax
mov ebx, ebp
mov dword [esp + 0x14], ebp
mov eax, dword [esp + 0x14]
add dword [esp + 0x14], 4
mov eax, dword [eax]
mov dword [esp + 0x18], 0x20
mov dword [esp + 0x10], eax
xor edi, edi
mov eax, dword [esp + 0x24]
test eax, eax
lea ecx, [eax - 1]
mov dword [esp + 0x24], ecx
jne 0x1c44aefc
mov eax, dword [esp + 0x50]
test eax, eax
je 0x1c44b163
mov ebp, ebx
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x84]
sub ebp, eax
mov edx, dword [esp + 0x98]
mov eax, dword [esp + 0x4c]
mov dword [ecx], ebp
pop ebp
mov dword [edx], eax
xor eax, eax
pop edi
pop esi
pop ebx
add esp, 0x54
ret
mov eax, 0xffffffff
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x54
ret