Function at 0x62afe8c
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x44
call 0x62afe98
pop ecx
mov edi, dword [esp + 0x64]
mov edx, dword [esp + 0x5c]
mov al, byte [edx + 1]
mov byte [esp + 0x23], al
mov al, byte [edx + 2]
mov byte [esp + 0x22], al
mov eax, edi
and eax, 7
cmp eax, 5
ja 0x62afefb
add ecx, dword [eax*4 + 0x62afeb4]
jmp ecx
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x30], ecx
xor esi, esi
mov ebx, edi
sub ebx, eax
cmovb ebx, esi
cmp ebx, 0x20
jb 0x62b0583
lea eax, [ebx - 0x20]
xor esi, esi
xor ebp, ebp
mov dword [esp + 0x28], ebx
mov dword [esp + 0x34], eax
cmp esi, eax
ja 0x62b0585
lea edx, [esi + 0x20]
mov dword [esp], esi
mov ecx, esi
mov dword [esp + 0x38], edx
push 0x6315be0
push edi
push dword [esp + 0x68]
call fcn.062af5bc
add esp, 0xc
mov esi, eax
mov edi, edx
lea edx, [ebp + 0x1a]
mov dword [esp + 0x2c], ebp
mov ecx, ebp
push 0x6315bf0
push dword [esp + 0x70]
push dword [esp + 0x70]
call fcn.062af5bc
add esp, 0xc
mov ebp, eax
mov ebx, edx
mov dword [esp + 0x18], esi
mov ecx, esi
mov dword [esp + 0x14], edi
mov edx, edi
push 0x6315c00
push 0
call fcn.062af5eb
pop ecx
pop ecx
mov edi, eax
mov esi, edx
mov dword [esp + 0x10], ebp
mov ecx, ebp
mov dword [esp + 0xc], ebx
mov edx, ebx
push 0x6315c10
push 0
call fcn.062af5eb
pop ecx
pop ecx
test esi, esi
je 0x62b0a5a
mov ebp, edx
movzx ecx, byte [edi]
mov edx, dword [esp + 0x5c]
mov bh, byte [edx + ecx + 0x43]
cmp bh, 0xff
je 0x62b092b
cmp esi, 1
je 0x62b0a68
mov dword [esp + 8], eax
movzx ecx, byte [edi + 1]
mov ah, byte [edx + ecx + 0x43]
cmp ah, 0xff
je 0x62b0930
cmp esi, 3
jb 0x62b0a72
movzx ecx, byte [edi + 2]
mov al, byte [edx + ecx + 0x43]
cmp al, 0xff
je 0x62b0936
cmp esi, 3
je 0x62b0a7c
mov byte [esp + 0x1c], ah
movzx ecx, byte [edi + 3]
mov bl, byte [edx + ecx + 0x43]
cmp bl, 0xff
je 0x62b093e
cmp esi, 5
jb 0x62b0a86
movzx ecx, byte [edi + 4]
mov ah, byte [edx + ecx + 0x43]
cmp ah, 0xff
je 0x62b0946
cmp esi, 5
je 0x62b0a90
movzx ecx, byte [edi + 5]
mov dh, byte [edx + ecx + 0x43]
cmp dh, 0xff
je 0x62b094e
cmp esi, 7
jb 0x62b0a9a
mov dword [esp + 0x24], ebp
movzx ecx, byte [edi + 6]
mov ebp, dword [esp + 0x5c]
mov dl, byte [ebp + ecx + 0x43]
cmp dl, 0xff
je 0x62b0956
cmp esi, 7
je 0x62b0aa4
mov byte [esp + 7], dh
mov dh, bl
mov bl, al
mov al, bh
movzx ecx, byte [edi + 7]
mov esi, dword [esp + 0x5c]
mov bh, byte [esi + ecx + 0x43]
cmp bh, 0xff
je 0x62b095e
movzx ecx, al
shl ecx, 0x1a
movzx esi, byte [esp + 0x1c]
shl esi, 0x14
or esi, ecx
movzx ecx, bl
shl ecx, 0xe
or ecx, esi
movzx esi, dh
shl esi, 8
or esi, ecx
movzx ecx, ah
shl ecx, 2
or ecx, esi
movzx eax, byte [esp + 7]
mov esi, eax
shl esi, 0x1c
shr eax, 4
or eax, ecx
movzx ecx, dl
shl ecx, 0x16
or ecx, esi
movzx esi, bh
shl esi, 0x10
or esi, ecx
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0x24]
push eax
push esi
call fcn.062af62e
pop eax
pop ecx
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
push 0x6315c20
push 8
call fcn.062af5eb
pop ecx
pop ecx
mov esi, eax
mov edi, edx
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
push 0x6315c30
push 6
call fcn.062af5eb
pop ecx
pop ecx
test edi, edi
je 0x62b0a5a
mov ebp, edx
movzx ecx, byte [esi]
mov edx, dword [esp + 0x5c]
mov bh, byte [edx + ecx + 0x43]
cmp bh, 0xff
je 0x62b09ce
cmp edi, 1
je 0x62b0a68
mov dword [esp + 8], ebp
mov ebp, eax
movzx ecx, byte [esi + 1]
mov ah, byte [edx + ecx + 0x43]
cmp ah, 0xff
je 0x62b09d2
cmp edi, 3
jb 0x62b0a72
movzx ecx, byte [esi + 2]
mov al, byte [edx + ecx + 0x43]
cmp al, 0xff
je 0x62b09d6
cmp edi, 3
je 0x62b0a7c
mov byte [esp + 0x1c], ah
movzx ecx, byte [esi + 3]
mov bl, byte [edx + ecx + 0x43]
cmp bl, 0xff
je 0x62b09da
cmp edi, 5
jb 0x62b0a86
movzx ecx, byte [esi + 4]
mov ah, byte [edx + ecx + 0x43]
cmp ah, 0xff
je 0x62b09de
cmp edi, 5
je 0x62b0a90
movzx ecx, byte [esi + 5]
mov dh, byte [edx + ecx + 0x43]
cmp dh, 0xff
je 0x62b09e2
cmp edi, 7
jb 0x62b0a9a
mov dword [esp + 0x24], ebp
movzx ecx, byte [esi + 6]
mov ebp, dword [esp + 0x5c]
mov dl, byte [ebp + ecx + 0x43]
cmp dl, 0xff
je 0x62b09e6
cmp edi, 7
je 0x62b0aa4
mov byte [esp + 7], dh
mov dh, bl
mov bl, al
mov al, bh
movzx ecx, byte [esi + 7]
mov esi, dword [esp + 0x5c]
mov bh, byte [esi + ecx + 0x43]
cmp bh, 0xff
je 0x62b09ea
movzx ecx, al
shl ecx, 0x1a
movzx esi, byte [esp + 0x1c]
shl esi, 0x14
or esi, ecx
movzx ecx, bl
shl ecx, 0xe
or ecx, esi
movzx esi, dh
shl esi, 8
or esi, ecx
movzx ecx, ah
shl ecx, 2
or ecx, esi
movzx eax, byte [esp + 7]
mov esi, eax
shl esi, 0x1c
shr eax, 4
or eax, ecx
movzx ecx, dl
shl ecx, 0x16
or ecx, esi
movzx esi, bh
shl esi, 0x10
or esi, ecx
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 8]
push eax
push esi
call fcn.062af62e
pop eax
pop ecx
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
push 0x6315c40
push 0x10
call fcn.062af5eb
pop ecx
pop ecx
mov esi, eax
mov edi, edx
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
push 0x6315c50
push 0xc
call fcn.062af5eb
pop ecx
pop ecx
test edi, edi
je 0x62b0a5a
mov ebp, edx
movzx ecx, byte [esi]
mov edx, dword [esp + 0x5c]
mov bh, byte [edx + ecx + 0x43]
cmp bh, 0xff
je 0x62b09ee
cmp edi, 1
je 0x62b0a68
mov dword [esp + 8], ebp
mov ebp, eax
movzx ecx, byte [esi + 1]
mov ah, byte [edx + ecx + 0x43]
cmp ah, 0xff
je 0x62b09f2
cmp edi, 3
jb 0x62b0a72
movzx ecx, byte [esi + 2]
mov al, byte [edx + ecx + 0x43]
cmp al, 0xff
je 0x62b09f6
cmp edi, 3
je 0x62b0a7c
mov byte [esp + 0x1c], ah
movzx ecx, byte [esi + 3]
mov bl, byte [edx + ecx + 0x43]
cmp bl, 0xff
je 0x62b09fa
cmp edi, 5
jb 0x62b0a86
movzx ecx, byte [esi + 4]
mov ah, byte [edx + ecx + 0x43]
cmp ah, 0xff
je 0x62b09fe
cmp edi, 5
je 0x62b0a90
movzx ecx, byte [esi + 5]
mov dh, byte [edx + ecx + 0x43]
cmp dh, 0xff
je 0x62b0a02
cmp edi, 7
jb 0x62b0a9a
mov dword [esp + 0x24], ebp
movzx ecx, byte [esi + 6]
mov ebp, dword [esp + 0x5c]
mov dl, byte [ebp + ecx + 0x43]
cmp dl, 0xff
je 0x62b0a06
cmp edi, 7
je 0x62b0aa4
mov byte [esp + 7], dh
mov dh, bl
mov bl, al
mov al, bh
movzx ecx, byte [esi + 7]
mov esi, dword [esp + 0x5c]
mov bh, byte [esi + ecx + 0x43]
cmp bh, 0xff
je 0x62b0a0a
movzx ecx, al
shl ecx, 0x1a
movzx esi, byte [esp + 0x1c]
shl esi, 0x14
or esi, ecx
movzx ecx, bl
shl ecx, 0xe
or ecx, esi
movzx esi, dh
shl esi, 8
or esi, ecx
movzx ecx, ah
shl ecx, 2
or ecx, esi
movzx eax, byte [esp + 7]
mov esi, eax
shl esi, 0x1c
shr eax, 4
or eax, ecx
movzx ecx, dl
shl ecx, 0x16
or ecx, esi
movzx esi, bh
shl esi, 0x10
or esi, ecx
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 8]
push eax
push esi
call fcn.062af62e
pop eax
pop ecx
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
push 0x6315c60
push 0x18
call fcn.062af5eb
pop ecx
pop ecx
mov esi, eax
mov edi, edx
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
push 0x6315c70
push 0x12
call fcn.062af5eb
pop ecx
pop ecx
test edi, edi
je 0x62b0a5a
mov ebx, eax
mov ebp, edx
movzx ecx, byte [esi]
mov edx, dword [esp + 0x5c]
mov al, byte [edx + ecx + 0x43]
cmp al, 0xff
je 0x62b0a0e
mov dword [esp + 0x18], ebp
cmp edi, 1
je 0x62b0a68
mov ebp, ebx
movzx ecx, byte [esi + 1]
mov bl, byte [edx + ecx + 0x43]
cmp bl, 0xff
je 0x62b0a12
cmp edi, 3
jb 0x62b0a72
movzx ecx, byte [esi + 2]
mov bh, byte [edx + ecx + 0x43]
mov byte [esp + 0x14], bh
cmp bh, 0xff
je 0x62b0a16
mov byte [esp + 0x10], bl
cmp edi, 3
je 0x62b0a7c
movzx ecx, byte [esi + 3]
mov bl, byte [edx + ecx + 0x43]
cmp bl, 0xff
je 0x62b0a1a
cmp edi, 5
jb 0x62b0a86
movzx ecx, byte [esi + 4]
mov ah, byte [edx + ecx + 0x43]
cmp ah, 0xff
je 0x62b0a1e
cmp edi, 5
je 0x62b0a90
movzx ecx, byte [esi + 5]
mov dh, byte [edx + ecx + 0x43]
cmp dh, 0xff
je 0x62b0a22
mov dword [esp + 0xc], ebp
cmp edi, 7
jb 0x62b0a9a
movzx ecx, byte [esi + 6]
mov ebp, dword [esp + 0x5c]
mov dl, byte [ebp + ecx + 0x43]
cmp dl, 0xff
je 0x62b0a26
cmp edi, 7
je 0x62b0aa4
movzx ecx, byte [esi + 7]
mov esi, dword [esp + 0x5c]
mov bh, byte [esi + ecx + 0x43]
cmp bh, 0xff
mov ebp, dword [esp + 0x2c]
je 0x62b0a2a
movzx ecx, al
shl ecx, 0x1a
movzx esi, byte [esp + 0x10]
shl esi, 0x14
or esi, ecx
movzx ecx, byte [esp + 0x14]
shl ecx, 0xe
or ecx, esi
movzx esi, bl
shl esi, 8
or esi, ecx
movzx ecx, ah
shl ecx, 2
or ecx, esi
movzx eax, dh
mov esi, eax
shl esi, 0x1c
shr eax, 4
or eax, ecx
movzx ecx, dl
shl ecx, 0x16
or ecx, esi
movzx esi, bh
shl esi, 0x10
or esi, ecx
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x18]
push eax
push esi
call fcn.062af62e
pop eax
pop ecx
add ebp, 0x18
add dword [esp + 0x30], 0xfffffffc
mov esi, dword [esp + 0x38]
mov edi, dword [esp + 0x64]
mov edx, dword [esp + 0x5c]
mov ebx, dword [esp + 0x28]
mov eax, dword [esp + 0x34]
jmp 0x62aff24
xor ebp, ebp
cmp ebx, 8
jb 0x62b073c
add ebx, 0xfffffff8
mov dword [esp + 0x28], ebx
cmp esi, ebx
jae 0x62b073c
lea edx, [esi + 8]
mov dword [esp], esi
mov ecx, esi
mov dword [esp + 0x18], edx
push 0x6315c80
push edi
push dword [esp + 0x68]
call fcn.062af5bc
add esp, 0xc
mov edi, eax
mov esi, edx
lea edx, [ebp + 8]
mov ecx, ebp
push 0x6315c90
push dword [esp + 0x70]
push dword [esp + 0x70]
call fcn.062af5bc
add esp, 0xc
test esi, esi
je 0x62b0a5a
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x14], edx
movzx ecx, byte [edi]
mov ebp, dword [esp + 0x5c]
mov dl, byte [ebp + ecx + 0x43]
mov byte [esp + 0x10], dl
cmp dl, 0xff
je 0x62b092b
cmp esi, 1
je 0x62b0a68
movzx ecx, byte [edi + 1]
mov dl, byte [ebp + ecx + 0x43]
cmp dl, 0xff
je 0x62b0930
cmp esi, 3
jb 0x62b0a72
movzx ecx, byte [edi + 2]
mov bh, byte [ebp + ecx + 0x43]
cmp bh, 0xff
je 0x62b0936
cmp esi, 3
je 0x62b0a7c
mov dword [esp + 0xc], eax
movzx ecx, byte [edi + 3]
mov ah, byte [ebp + ecx + 0x43]
cmp ah, 0xff
je 0x62b093e
cmp esi, 5
jb 0x62b0a86
movzx ecx, byte [edi + 4]
mov al, byte [ebp + ecx + 0x43]
cmp al, 0xff
je 0x62b0946
cmp esi, 5
je 0x62b0a90
mov byte [esp + 8], ah
movzx ecx, byte [edi + 5]
mov ah, byte [ebp + ecx + 0x43]
cmp ah, 0xff
je 0x62b094e
cmp esi, 7
jb 0x62b0a9a
mov bl, dl
movzx ecx, byte [edi + 6]
mov dl, byte [ebp + ecx + 0x43]
cmp dl, 0xff
je 0x62b0956
cmp esi, 7
je 0x62b0aa4
movzx ecx, byte [edi + 7]
mov esi, dword [esp + 0x5c]
mov dh, byte [esi + ecx + 0x43]
cmp dh, 0xff
je 0x62b095e
movzx ecx, byte [esp + 0x10]
shl ecx, 0x1a
movzx esi, bl
shl esi, 0x14
or esi, ecx
movzx ecx, bh
shl ecx, 0xe
or ecx, esi
movzx esi, byte [esp + 8]
shl esi, 8
or esi, ecx
movzx ecx, al
shl ecx, 2
or ecx, esi
movzx eax, ah
mov esi, eax
shl esi, 0x1c
shr eax, 4
or eax, ecx
movzx ecx, dl
shl ecx, 0x16
or ecx, esi
movzx esi, dh
shl esi, 0x10
or esi, ecx
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x14]
push eax
push esi
call fcn.062af62e
pop eax
pop ecx
mov ebp, dword [esp + 0x2c]
add ebp, 6
dec dword [esp + 0x30]
mov esi, dword [esp + 0x18]
mov edi, dword [esp + 0x64]
mov edx, dword [esp + 0x5c]
mov ebx, dword [esp + 0x28]
jmp 0x62b0595
lea eax, [edx + 0x43]
mov dword [esp + 0x1c], eax
xor ebx, ebx
inc ebx
cmp ebx, dword [esp + 0x30]
jae 0x62b0998
mov ecx, dword [esp + 0x60]
mov edx, edi
push 0x6315ca0
mov dword [esp + 4], esi
push esi
call fcn.062af5eb
pop ecx
pop ecx
mov edi, eax
mov esi, edx
lea edx, [ebp + 6]
mov ecx, ebp
mov dword [esp + 0x2c], edx
push 0x6315cb0
push dword [esp + 0x70]
push dword [esp + 0x70]
call fcn.062af5bc
add esp, 0xc
and dword [esp + 0x40], 0
and dword [esp + 0x3c], 0
test esi, esi
je 0x62b0a5a
mov dword [esp + 0x18], edx
mov ebp, ebx
movzx ecx, byte [edi]
mov edx, dword [esp + 0x5c]
mov bl, byte [edx + ecx + 0x43]
mov byte [esp + 0x14], bl
cmp bl, 0xff
je 0x62b092b
cmp esi, 1
je 0x62b0a68
movzx ecx, byte [edi + 1]
mov bl, byte [edx + ecx + 0x43]
cmp bl, 0xff
je 0x62b0930
cmp esi, 3
jb 0x62b0a72
movzx ecx, byte [edi + 2]
mov bh, byte [edx + ecx + 0x43]
cmp bh, 0xff
je 0x62b0936
cmp esi, 3
je 0x62b0a7c
movzx ecx, byte [edi + 3]
mov dl, byte [edx + ecx + 0x43]
cmp dl, 0xff
je 0x62b093e
cmp esi, 5
jb 0x62b0a86
mov byte [esp + 0x28], bh
mov byte [esp + 0xc], bl
mov dword [esp + 0x10], ebp
movzx ecx, byte [edi + 4]
mov ebx, dword [esp + 0x5c]
mov bl, byte [ebx + ecx + 0x43]
cmp bl, 0xff
je 0x62b0946
cmp esi, 5
je 0x62b0a90
mov dword [esp + 8], eax
movzx ecx, byte [edi + 5]
mov ebp, dword [esp + 0x5c]
mov al, byte [ebp + ecx + 0x43]
cmp al, 0xff
je 0x62b094e
cmp esi, 7
jb 0x62b0a9a
movzx ecx, byte [edi + 6]
mov dh, byte [ebp + ecx + 0x43]
cmp dh, 0xff
je 0x62b0956
cmp esi, 7
je 0x62b0aa4
movzx ecx, byte [edi + 7]
mov esi, dword [esp + 0x5c]
mov bh, byte [esi + ecx + 0x43]
cmp bh, 0xff
je 0x62b095e
mov ecx, eax
movzx eax, byte [esp + 0x14]
shl eax, 0x1a
movzx esi, byte [esp + 0xc]
shl esi, 0x14
or esi, eax
movzx eax, byte [esp + 0x28]
shl eax, 0xe
or eax, esi
movzx esi, dl
shl esi, 8
or esi, eax
movzx edi, bl
shl edi, 2
or edi, esi
movzx eax, cl
mov esi, eax
shl esi, 0x1c
shr eax, 4
or eax, edi
movzx ecx, dh
shl ecx, 0x16
or ecx, esi
movzx esi, bh
shl esi, 0x10
or esi, ecx
lea edi, [esp + 0x3c]
mov ecx, edi
push 8
pop edx
push eax
push esi
call fcn.062af62e
pop eax
pop ecx
xor ecx, ecx
push 6
pop edx
push 0x6315d40
push dword [esp + 0x1c]
push dword [esp + 0x10]
call fcn.062af5bc
add esp, 0xc
push 0x6315d50
push 6
push edi
push edx
push eax
call fcn.062a209a
add esp, 0x14
mov esi, dword [esp]
add esi, 8
mov ebx, dword [esp + 0x10]
inc ebx
mov ebp, dword [esp + 0x2c]
mov edi, dword [esp + 0x64]
jmp 0x62b0746
mov edx, dword [esp]
jmp 0x62b0964
mov edx, dword [esp]
inc edx
jmp 0x62b0964
mov edx, dword [esp]
add edx, 2
jmp 0x62b0964
mov edx, dword [esp]
add edx, 3
jmp 0x62b0964
mov edx, dword [esp]
add edx, 4
jmp 0x62b0964
mov edx, dword [esp]
add edx, 5
jmp 0x62b0964
mov edx, dword [esp]
add edx, 6
jmp 0x62b0964
mov edx, dword [esp]
add edx, 7
mov eax, edx
shl eax, 0x18
shr edx, 8
shld edx, eax, 8
movzx ecx, cl
shl ecx, 8
mov eax, dword [esp + 0x58]
mov dword [eax + 8], edx
mov dword [eax + 4], ecx
jmp 0x62b0a4c
movzx eax, byte [esp + 0x22]
movzx ecx, byte [esp + 0x23]
push eax
push ecx
push dword [esp + 0x24]
push ebp
push dword [esp + 0x7c]
push dword [esp + 0x7c]
push esi
push edi
push dword [esp + 0x80]
mov esi, dword [esp + 0x7c]
push esi
call 0x62b0b4b
mov eax, esi
add esp, 0x28
jmp 0x62b0a52
push 8
jmp 0x62b0a2c
push 9
jmp 0x62b0a2c
push 0xa
jmp 0x62b0a2c
push 0xb
jmp 0x62b0a2c
push 0xc
jmp 0x62b0a2c
push 0xd
jmp 0x62b0a2c
push 0xe
jmp 0x62b0a2c
push 0xf
jmp 0x62b0a2c
push 0x10
jmp 0x62b0a2c
push 0x11
jmp 0x62b0a2c
push 0x12
jmp 0x62b0a2c
push 0x13
jmp 0x62b0a2c
push 0x14
jmp 0x62b0a2c
push 0x15
jmp 0x62b0a2c
push 0x16
jmp 0x62b0a2c
push 0x17
jmp 0x62b0a2c
push 0x18
jmp 0x62b0a2c
push 0x19
jmp 0x62b0a2c
push 0x1a
jmp 0x62b0a2c
push 0x1b
jmp 0x62b0a2c
push 0x1c
jmp 0x62b0a2c
push 0x1d
jmp 0x62b0a2c
push 0x1e
jmp 0x62b0a2c
push 0x1f
pop edx
add edx, dword [esp]
mov eax, edx
shl eax, 0x18
shr edx, 8
shld edx, eax, 8
movzx ecx, cl
shl ecx, 8
mov eax, dword [esp + 0x58]
mov dword [eax + 4], ecx
mov dword [eax + 8], edx
mov dword [eax], 2
add esp, 0x44
pop esi
pop edi
pop ebx
pop ebp
ret
push 0x6315cc0
push 0
push 0
call fcn.0630eba0
xor eax, eax
inc eax
push 0x6315cd0
jmp 0x62b0aac
push 2
pop eax
push 0x6315ce0
jmp 0x62b0aac
push 3
pop eax
push 0x6315cf0
jmp 0x62b0aac
push 4
pop eax
push 0x6315d00
jmp 0x62b0aac
push 5
pop eax
push 0x6315d10
jmp 0x62b0aac
push 0x6315d20
push 6
pop eax
jmp 0x62b0aac
push 7
pop eax
push 0x6315d30
push eax
push eax
call fcn.0630eba0
nop
pop eax
add byte [eax], al
add byte [edx], ch
add byte [eax], al
add byte [eax + eax], dl
add byte [eax], ah
add byte [eax], al
pop esp
add byte [eax], al
add byte [edx], ch
add byte [eax], al
add byte [esi + 0x50], dl
push esi
push eax
mov eax, edx
mov esi, ecx
push 8
pop edx
xor ecx, ecx
push 0x63160fc
push eax
push esi
call fcn.062af5bc
add esp, 0xc
cmp edx, 8
jne 0x62b0af9
mov edx, dword [eax]
mov eax, dword [eax + 4]
bswap eax
bswap edx
add esp, 4
pop esi
ret
lea eax, [esp + 3]
push 0x631610c
push 0x6315b7c
push eax
push 0x2b
push 0x6315b50
call fcn.0630edd0
sub esp, 0x20
mov eax, esp
lea ecx, [esp + 8]
mov dword [ecx], 0x6316148
xor edx, edx
inc edx
mov dword [ecx + 4], edx
and dword [ecx + 0x10], 0
mov dword [eax], str.main.rs_src_syncmpsc_bounded.rs
mov dword [eax + 4], 0x62b0320
mov dword [ecx + 8], eax
mov dword [ecx + 0xc], edx
push 0x6316200
push ecx
call fcn.0630ea20
push ebp
push ebx
push edi
push esi
sub esp, 0x1c
mov edi, dword [esp + 0x3c]
mov edx, dword [esp + 0x38]
cmp edi, edx
ja 0x62b0d61
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x34]
add edx, ecx
mov dword [esp + 8], edx
add edi, ecx
xor edx, edx
mov dword [esp + 0xc], 0
xor ebp, ebp
xor ebx, ebx
mov dword [esp + 0x14], 0
mov dword [esp + 4], edi
mov dword [esp + 0x10], 0
mov dword [esp], 0
xor ecx, ecx
cmp edi, dword [esp + 8]
je 0x62b0c1b
mov esi, edx
movzx edx, byte [edi]
cmp edx, 0x3d
jne 0x62b0bc2
sub ecx, 1
mov edx, esi
cmovb ebp, esi
test dl, 2
je 0x62b0c41
inc edi
inc edx
jmp 0x62b0b9d
test ecx, ecx
jne 0x62b0c41
mov eax, ebx
mov ebx, edx
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0x4c]
mov bl, byte [ebx + edx]
cmp bl, 0xff
je 0x62b0d32
inc eax
mov dword [esp + 0x18], eax
movzx ebx, bl
imul ecx, eax, 0x3a
xor edx, edx
shld edx, ebx, cl
shl ebx, cl
inc edi
inc esi
test cl, 0x20
cmovne edx, ebx
mov eax, 0
cmovne ebx, eax
or dword [esp + 0x10], edx
mov edx, esi
mov eax, dword [esp + 0x30]
or dword [esp + 0x14], ebx
mov ebx, dword [esp + 0x18]
mov dword [esp + 4], edi
mov dword [esp], esi
jmp 0x62b0b9b
mov cl, byte [esp + 0x54]
cmp cl, 2
je 0x62b0c59
movzx ecx, cl
cmp ecx, 1
jne 0x62b0c63
mov ecx, dword [esp + 8]
sub ecx, dword [esp + 4]
add ecx, ebx
test cl, 3
je 0x62b0c63
mov byte [eax + 4], 3
jmp 0x62b0c4e
add ebp, dword [esp + 0x3c]
mov word [eax + 4], 0x3d00
mov dword [eax + 8], ebp
mov dword [eax], 2
jmp 0x62b0d2a
mov ecx, dword [esp + 4]
cmp dword [esp + 8], ecx
jne 0x62b0c3b
cmp ebx, 9
jae 0x62b0d6d
mov ecx, 0x1dd
bt ecx, ebx
jae 0x62b0d6d
mov ecx, dword [ebx*4 + 0x63162e0]
cmp byte [esp + 0x50], 0
mov edx, ecx
mov dword [esp], ecx
jne 0x62b0cca
mov edi, dword [esp + 0x10]
mov ecx, dword [esp]
mov edx, dword [esp + 0x14]
shld edi, edx, cl
mov ecx, dword [esp]
shl edx, cl
xor ecx, ecx
test byte [esp], 0x20
cmovne edi, edx
cmove ecx, edx
or ecx, edi
mov ecx, dword [esp]
je 0x62b0cca
mov ecx, dword [esp + 0x3c]
add ecx, ebx
dec ecx
mov byte [eax + 4], 2
mov edx, dword [esp + 0xc]
mov byte [eax + 5], dl
mov dword [eax + 8], ecx
jmp 0x62b0c4e
xor edi, edi
push 0x38
pop edx
mov esi, dword [esp + 0x48]
cmp edi, ecx
jae 0x62b0d0d
cmp esi, dword [esp + 0x44]
jae 0x62b0d52
mov ecx, edx
and cl, 0x38
mov ebx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
shrd ebx, eax, cl
mov ecx, edx
and cl, 0x18
shr eax, cl
test dl, 0x20
cmove eax, ebx
mov ecx, dword [esp + 0x40]
mov byte [ecx + esi], al
mov ecx, dword [esp]
inc esi
add edi, 8
add edx, 0xfffffff8
jmp 0x62b0cd3
xor ecx, ecx
mov eax, dword [esp + 4]
cmp dword [esp + 8], eax
setne cl
add ebp, dword [esp + 0x3c]
mov eax, dword [esp + 0x30]
mov dword [eax], ecx
mov dword [eax + 4], ebp
mov dword [eax + 8], esi
add esp, 0x1c
pop esi
pop edi
pop ebx
pop ebp
ret
mov edx, dword [esp + 0x3c]
add edx, dword [esp]
sub edx, ecx
mov eax, dword [esp + 0x30]
mov byte [eax + 4], 0
mov ecx, dword [esp + 0xc]
mov byte [eax + 5], cl
mov dword [eax + 8], edx
jmp 0x62b0c4e
push 0x6316194
push dword [esp + 0x48]
push esi
call fcn.0630eba0
push 0x6316184
push edx
push edi
call fcn.0630ee50
call 0x62b0b14