Function at 0x4739d0
Capabilities:
Terminate process

Disassembly:
sub esp, 0x14
mov eax, dword [0x4d16b0]
xor eax, esp
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x18]
push esi
mov esi, ecx
mov dword [esp + 8], eax
mov eax, dword [esi + 0x260]
test eax, eax
mov dword [esp + 4], 0
je 0x473a4c
cmp eax, 1
jne 0x473a19
mov eax, dword [esp + 0x20]
call fcn.00470aa0
pop esi
mov ecx, dword [esp + 0x10]
xor ecx, esp
call fcn.0047f460
add esp, 0x14
ret
add eax, 0xffffffff
cmp eax, 1
mov dword [esi + 0x260], eax
jne 0x473a4c
mov ecx, str.No_space_in_chunk_cache_for_unknown_chunk
call fcn.004665c0
mov eax, dword [esp + 0x20]
mov ecx, esi
call fcn.00470aa0
pop esi
mov ecx, dword [esp + 0x10]
xor ecx, esp
call fcn.0047f460
add esp, 0x14
ret
push ebx
mov ebx, dword [esi + 0x6c]
test bl, 4
push ebp
push edi
je 0x473b04
mov byte [esp + 0x18], 0x49
mov byte [esp + 0x19], 0x44
mov byte [esp + 0x1a], 0x41
mov byte [esp + 0x1b], 0x54
mov byte [esp + 0x1c], 0
mov eax, 4
lea ecx, [esp + 0x18]
lea edx, [esi + 0x11c]
mov edi, dword [edx]
cmp edi, dword [ecx]
jne 0x473a9b
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x473a83
test eax, eax
je 0x473af8
movzx ebp, byte [ecx]
movzx edi, byte [edx]
sub edi, ebp
jne 0x473aea
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x473af8
movzx ebp, byte [ecx]
movzx edi, byte [edx]
sub edi, ebp
jne 0x473aea
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x473af8
movzx ebp, byte [ecx]
movzx edi, byte [edx]
sub edi, ebp
jne 0x473aea
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x473af8
movzx ecx, byte [ecx]
movzx edi, byte [edx]
sub edi, ecx
je 0x473af8
test edi, edi
mov eax, 1
jg 0x473afa
or eax, 0xffffffff
jmp 0x473afa
xor eax, eax
test eax, eax
je 0x473b04
or ebx, 8
mov dword [esi + 0x6c], ebx
test byte [esi + 0x11c], 0x20
lea ebp, [esi + 0x11c]
jne 0x473b36
push ebp
mov ecx, esi
call fcn.00466f50
add esp, 4
cmp eax, 3
je 0x473b36
cmp dword [esi + 0x21c], 0
jne 0x473b36
mov edx, str.unknown_critical_chunk
jmp fcn.004666f0
test dword [esi + 0x70], 0x8000
jne 0x473b55
cmp dword [esi + 0x21c], 0
jne 0x473b55
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x10], edx
jmp 0x473c4a
mov eax, dword [ebp]
mov ebx, dword [esp + 0x2c]
test ebx, ebx
mov cl, byte [ebp + 4]
lea edi, [esi + 0x28c]
mov dword [edi], eax
mov byte [edi + 4], cl
mov byte [esi + 0x290], 0
mov dword [esi + 0x298], ebx
jne 0x473b83
mov dword [esi + 0x294], ebx
jmp 0x473bc2
mov eax, dword [esi + 0x23c]
test eax, eax
push ebx
je 0x473b96
push esi
call eax
add esp, 8
jmp 0x473b9e
call fcn.00482392
add esp, 4
test eax, eax
jne 0x473bb7
test dword [esi + 0x70], 0x100000
jne 0x473bb7
mov edi, str.Out_of_Memory
mov eax, esi
jmp fcn.004665a0
mov dword [esi + 0x294], eax
call fcn.00470a30
mov eax, dword [esi + 0x21c]
test eax, eax
je 0x473c0a
push edi
push esi
call eax
add esp, 8
test eax, eax
jge 0x473be1
mov edx, str.error_in_user_chunk
jmp fcn.004666f0
jne 0x473c1b
test byte [ebp], 0x20
jne 0x473c03
push ebp
mov ecx, esi
call fcn.00466f50
add esp, 4
cmp eax, 3
je 0x473c03
mov edx, str.unknown_critical_chunk
jmp fcn.004666f0
mov edx, dword [esp + 0x14]
push edx
jmp 0x473c0f
mov eax, dword [esp + 0x14]
push eax
mov ebx, edi
mov eax, esi
call fcn.004664a0
add esp, 4
mov ecx, dword [esi + 0x294]
test ecx, ecx
je 0x473c40
mov eax, dword [esi + 0x240]
test eax, eax
push ecx
je 0x473c38
push esi
call eax
add esp, 8
jmp 0x473c40
call fcn.0047fdbd
add esp, 4
mov dword [esi + 0x294], 0
mov eax, dword [esp + 0x10]
mov ecx, esi
call fcn.00470aa0
mov ecx, dword [esp + 0x20]
pop edi
pop ebp
pop ebx
pop esi
xor ecx, esp
call fcn.0047f460
add esp, 0x14
ret