Function at 0x7bd060
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x883708
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x2c
push ebx
push ebp
push esi
push edi
mov edi, ecx
mov eax, dword [edi + 0x148]
xor ecx, ecx
xor ebp, ebp
xor esi, esi
xor bl, bl
cmp eax, 0x403
mov dword [esp + 0x18], ecx
mov byte [esp + 0x17], 0
mov dword [esp + 0x1c], ecx
ja 0x7bd26a
je 0x7bd24e
cmp eax, 0x304
ja 0x7bd168
je 0x7bd14f
sub eax, 0x101
je 0x7bd126
sub eax, 3
je 0x7bd0fd
dec eax
jne case.default.0x7bd274
mov dword [edi + 0x15c], 0x61e8f83c
call fcn.00575b00
neg al
mov esi, 0x3e
sbb eax, eax
and eax, 0xac8ddefd
add eax, 0x79165861
mov ebp, eax
jmp case.default.0x7bd274
mov dword [edi + 0x15c], 0x4d4a88d
call fcn.00575b00
neg al
mov esi, 0x3f
sbb eax, eax
and eax, 0xf0e5b6dc
add eax, 0x28f7092
mov ebp, eax
jmp case.default.0x7bd274
mov dword [edi + 0x15c], 0x6134c218
call fcn.00575b00
neg al
mov esi, 0x17
sbb eax, eax
and eax, 0xacad18c4
add eax, 0x28c24f6
mov ebp, eax
jmp case.default.0x7bd274
mov dword [edi + 0x15c], 0xd32729a6
mov ebp, 0x3f23165c
mov esi, 0x83
jmp case.default.0x7bd274
cmp eax, 0x307
je 0x7bd192
cmp eax, 0x402
jne case.default.0x7bd274
mov dword [edi + 0x15c], 0xd9228fc6
mov ebp, 0xf8148554
mov dword [esp + 0x18], ecx
jmp 0x7bd30f
mov al, byte [0x9b9eb0]
test al, al
jne 0x7bd1b9
mov eax, dword [edi + 0x10]
push ecx
mov ecx, dword [0x91cadc]
push eax
push 0x13fd3296
call fcn.00516c90
mov ecx, edi
call fcn.007b7670
jmp 0x7bd1d6
mov ecx, edi
call fcn.007a6d80
mov eax, dword [edi + 0x10]
mov ecx, dword [0x91cadc]
push 0
push eax
push 0x8cb81f09
call fcn.00516c90
mov eax, dword [0x9ba080]
test eax, eax
je 0x7bd1e8
mov eax, dword [eax + 0xc]
mov bl, 1
mov dword [esp + 0x1c], eax
mov dword [edi + 0x15c], 0x78980a6b
call fcn.00575b00
neg al
mov esi, 0x84
sbb eax, eax
and eax, 0x89167a40
add eax, 0x28f88bc
test bl, bl
mov ebp, eax
jne 0x7bd21f
push esi
mov ecx, 0x9b9ec0
call fcn.007aed20
mov dword [esp + 0x1c], eax
xor ecx, ecx
lea eax, [esp + 0x30]
mov edx, eax
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], edx
mov al, byte [esp + 0x17]
test al, al
mov dword [esp + 0x44], ecx
je 0x7bd332
mov eax, dword [esp + 0x18]
push eax
lea ecx, [esp + 0x34]
push ecx
jmp 0x7bd338
mov dword [edi + 0x15c], 0x1e8d885f
mov ebp, 0x192d84da
mov dword [esp + 0x18], 1
jmp 0x7bd30f
sub eax, 0x404
cmp eax, 5
ja case.default.0x7bd274
jmp dword [eax*4 + 0x7bd544]
mov dword [edi + 0x15c], 0x1c619fd8
mov ebp, 0xf7352706
mov dword [esp + 0x18], 2
jmp 0x7bd30f
mov dword [edi + 0x15c], 0x9c1b8935
mov ebp, 0x1223cc89
mov dword [esp + 0x18], 3
jmp 0x7bd30f
mov dword [edi + 0x15c], 0x7956f7b0
mov ebp, 0xbc44bbcb
mov dword [esp + 0x18], 4
jmp 0x7bd30f
mov dword [edi + 0x15c], 0x2d5bff0f
mov ebp, 0x694ca0ca
mov dword [esp + 0x18], 5
jmp 0x7bd30f
mov dword [edi + 0x15c], 0x209a9158
mov ebp, 0x1b3a8dd3
mov dword [esp + 0x18], 6
jmp 0x7bd30f
mov dword [edi + 0x15c], 0xcd057d21
mov ebp, 0x1ba508fc
mov dword [esp + 0x18], 7
mov eax, dword [0x9ba080]
cmp eax, ecx
mov esi, 0x4d
mov byte [esp + 0x17], 1
je case.default.0x7bd274
mov edx, dword [eax + 0xc]
mov dword [esp + 0x1c], edx
jmp 0x7bd221
push ecx
lea edx, [esp + 0x34]
push edx
mov ecx, 0x9b9ec0
push esi
call fcn.007af4f0
mov eax, dword [esp + 0x30]
xor ebx, ebx
lea ecx, [esp + 0x30]
cmp eax, ecx
mov dword [esp + 0x28], ebx
mov dword [esp + 0x20], 1
mov dword [esp + 0x2c], ebp
je 0x7bd4a4
mov ecx, dword [eax]
mov esi, eax
mov eax, dword [eax + 4]
mov dword [eax], ecx
mov dword [ecx + 4], eax
mov eax, dword [esi + 0x10]
mov ecx, dword [edi + 0x148]
add esi, 0xfffffffc
push eax
push ecx
mov ecx, 0x9b9ec0
call fcn.007b5ef0
mov dword [esp + 0x24], eax
mov al, byte [esp + 0x17]
test al, al
je 0x7bd3d2
mov eax, dword [esi + 0xc]
mov ecx, dword [esp + 0x18]
xor edx, edx
mov dl, byte [eax + 5]
and edx, 0x1f
cmp edx, ecx
jne 0x7bd3c5
movzx ecx, word [eax + 2]
movzx edx, word [eax]
shl ecx, 0x10
or ecx, edx
push ecx
call fcn.00576b30
add esp, 4
test al, al
jne 0x7bd44e
mov edx, dword [esi]
push 1
mov ecx, esi
call dword [edx]
jmp 0x7bd494
mov ebx, dword [esi + 0xc]
push str.CARBONFIBRE
call fcn.00460bf0
add esp, 4
push eax
mov ecx, ebx
call fcn.00747a50
test eax, eax
je 0x7bd44a
mov ebx, dword [esi + 0xc]
push 0
push str.CARBONFIBRE
call fcn.00460bf0
add esp, 4
push eax
mov ecx, ebx
call fcn.00747ac0
test eax, eax
je 0x7bd44a
mov eax, dword [edi + 0x148]
sub eax, 0x104
je 0x7bd433
dec eax
jne 0x7bd44e
call fcn.00575b00
neg al
sbb eax, eax
and eax, 0xd109cc11
add eax, 0xfc618215
mov ebp, eax
jmp 0x7bd44e
call fcn.00575b00
neg al
sbb eax, eax
and eax, 0xbc2f8810
add eax, 0x68495926
mov ebp, eax
jmp 0x7bd44e
mov ebp, dword [esp + 0x2c]
mov eax, dword [esi + 0xc]
mov bl, byte [eax + 5]
push 0
mov ecx, 0x9b9ec0
push esi
shr bl, 5
call fcn.007a4e50
movsx ecx, bl
push eax
mov eax, dword [esp + 0x28]
push eax
push 0
push ecx
push ebp
mov ecx, edi
push esi
call fcn.007b1740
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x7bd48e
cmp dword [esi + 0xc], eax
jne 0x7bd48e
mov edx, dword [esp + 0x20]
mov dword [esp + 0x28], edx
inc dword [esp + 0x20]
xor ebx, ebx
mov eax, dword [esp + 0x30]
lea ecx, [esp + 0x30]
cmp eax, ecx
jne 0x7bd365
mov eax, dword [0x9b9e84]
cmp eax, ebx
je 0x7bd4e4
mov cl, byte [edi + 0x129]
test cl, cl
je 0x7bd4d2
mov byte [edi + 0x11c], 0
mov byte [edi + 0x119], 1
mov byte [edi + 0x11a], 0
mov dword [edi + 0x110], ebx
mov edx, dword [edi + 0x2c]
lea ecx, [edi + 0x2c]
push eax
call dword [edx + 0x40]
mov dword [0x9b9e84], ebx
jmp 0x7bd517
mov al, byte [edi + 0x129]
test al, al
je 0x7bd509
mov byte [edi + 0x11c], 0
mov byte [edi + 0x119], 1
mov byte [edi + 0x11a], 0
mov dword [edi + 0x110], ebx
mov edx, dword [esp + 0x28]
mov eax, dword [edi + 0x2c]
lea ecx, [edi + 0x2c]
push edx
call dword [eax + 0x40]
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0xc]
lea ecx, [esp + 0x30]
mov dword [esp + 0x44], 0xffffffff
call fcn.007b3f00
mov ecx, dword [esp + 0x3c]
pop edi
mov dword fs:[0], ecx
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret